@Wayde Tse
在文章里有指出一些严峻错误
讲义一般会轻忽合做开发天然情况
的筹办。
那儿来两个仅从官网以获取天然资本的版:1,到Oracle的中文网站以获取Java Development Kit 7的正式版,拆之。
http://www.oracle.com/technetwork/java/javase/downloads/index.html2,到Android网页(http://android.com)以获取Android SDK。仅必要Android SDK Tools only,无须包容Eclipse IDE的完整IDE。
https://developer.android.com/sdk/index.html3,关上Android SDK,阅读USB驱动力
4,关上你Nexus5的合做开发人员贸易形式,迈入usb增容。
5,用USB线把智妙手机和条记本电脑断开,全主动选定加拆那边阅读好的Nexus5的usb驱动力,当找出usb电子设备时,在Nexus5上容许你的那台条记本电脑停止adb增容(那是Android 4.2导入的机能,用以制止未答应的出访)。
你可能必要运转adb devices或者其他会使adb与智妙手机通信的指示,才会显示那个介面。
就此完毕合做开发天然情况便增设好了。
该些的关键性是:
博得并加拆Nexus5的USB adb驱动力
博得所需的adb辅助东西,总共五个文档:
adb.exe fastboot.exe AdbWinUsbApi.dll AdbWinApi.dll假设本身有配套办法搞掂那两个项目,那就无须加拆JDK/Android SDK,JDK在此例中仅用做运转Android SDK。
除了全主动加拆驱动力外,你也能在条记本电脑拆个Proun/xx智妙手机警卫的体例,让它们替你做掉加拆驱动力的组织工做。
--------下列是root--------
从那儿起头,你要为你的暴力动作负全数职责
6,找出adb.exe的产物目次,在当前产物目次迈入两个控造面板(换句话说迈入两个控造面板后把组织工做产物目次迁徙到adb.exe所处的产物目次),控造面板能是cmd也能是powershell。 cmd在形式上就是dos/win95/98黄金时代的command。
7,在控造面板用
adb reboot bootloader从头启动Nexus5至fastboot,假设是powershell,必要用
./adb reboot bootloader那种的unix艺术气概,此中"."则暗示当前产物目次。
截屏里是powershell的艺术气概,出格留意cmd接纳dos艺术气概,两口子“./”。
假设是在linux系统,则每一产物目次下吗存在文档名为"."的文档,则暗示“本产物目次”,还有两个叫做".."的文档,则暗示“上二级产物目次”。 dos的控造面板也先辈经历了那种艺术气概,所以有:
cd..在linux里,则是那种,出格留意字符,表白".."吗是两个文档。
cd ..8,那儿假设你会用fastboot:短按音量键做上下,短按电源键做确定。
在条记本电脑的控造面板用那个指示
fastboot oem unlock解锁bootloader。
那儿假设你大白解锁bootloader
的意义和风险(出格是保修的),关于Nexus5而言,解锁bootloader会抹掉智妙手机上的所有的用户数据,包罗/sdcard。Google Play Store曾以“鼓舞解锁bootloader,从而丧失保修资格”的理由迫使CyanogenMod下线它们的CyaogenMod加拆器,虽然那个app自己其实不违背Google Play的条目。
CyanogenMod Installer Application Removed from Play Store
bootloader除了达成启动,并将系统引导权交给系统外,它还庇护eMMC上某些区域(/system,/boot,/recovery,/radio以及此外某些区域)不会遭到未答应修改。root必要往/system里写点工具,而我们没有Google用做OTA的证书私钥,所以我们必需解开那个锁。Nexus电子设备对合做开发人员十分友好,因而它的bootloader锁容许被随便解开。
9,到twrp/clockworkmod阅读适用Nexus5的recovery image。
到cyanogenMod或chainfire阅读最新的recovery格局(其实就是ota package格局)的superuser加拆包。chainfire的superuser叫做superSU。
以上的第三方recovery是用以让你加拆自定义ota package的辅助东西,官方的recovery一般只认官方格局且带特定命字签名的ota package。
那儿除了superSU外,都是自在软件。
TWRP: http://teamw.in/twrp_view_all_devices CWM: http://www.clockworkmod.com/rommanager superSU http://download.chainfire.eu/supersu CWM superuser http://download.clockworkmod.com/superuser/superuser.zip10,继续用fastboot,“fastboot flash recovery [那边阅读的recovery image的全名]“(不包罗大括号),如斯那边阅读好的第三方recovery便替代了原始的官方recovery。
能看到我的习惯,recovery阅读之后改个名字,6043则暗示cwm recovery 6.0.4.3,mako则暗示Nexus4
11,到智妙手机上操做(当然也能用fastboot reboot recovery),从头启动至recovery
12,进入recovery里的sideload,在条记本电脑端的控造面板运转"adb sideload [superuser ota package的文档名]",那种root就做好了。
所谓root即是往智妙手机里拆两个叫做superuser的软件包。
superuser包容两个组件,用以把历程权限提拔至root的su binary和办理用的superuser app。(那儿app指代android应用法式)
详细能参考:
http://www.linuxidc.com/Linux/2012-06/62329.htm你也能事先将superuser ota package加拆包拷贝到智妙手机里,在recovery里间接选择那个zip文档加拆(出格留意第一项choose zip from /sdcard,那儿的"/"则暗示分区,分区名叫做“sdcard”,现实上它是Nexus5的eMMC芯片里的两个分区,Linux把它理解成两个产物目次属性的文档)
当你在windows xp且没有拆windows media player的情况下,你无法通过mtp拷贝文档,此时能用adb push。除此以外,你还能用CWM recovery的usb挂载/sdcard的办法。
cwm6触摸版的sideload
13,从头启动至system,无论在recovery里操做仍是用adb reboot都能。那个时候你的智妙手机就能动用root了。
--
显然前面的关键性步调还有些事项没有表白。但是你也能出格留意到,那儿良多关键性步调都不是独一的。多领会点,现实操做时便越不折腾。
繁琐吧?
所以有刷机精灵,有xx一键root(贸易软件
,我不相信它们加拆的superuser是平安的)
所以有cf autoroot CF-Auto-Root---
所谓的刷机和加拆superuser原理不异,它用的凡是也是ota package。
只不外为了不让/data,/cache的旧文档干扰新的系统,在刷机以前我们必要做wipe。
所谓的factory reset/wipe/双清即是格局化以上两个分区。
而刷机包会主动完成/system,/boot(假设必要的话)分区的格局化。但是一般的习惯,刷机包不会格局化/data,ota package自己不晓得你是把它拿来用做刷机的仍是OTA的,就像superuser的ota package那样。
所谓OTA更新无非是在不格局化/data的情况下间接加拆对应当前系统的ota package。
---
还有一种
当你想回到刚刚领到Nexus5那一刻怎么办?
Google供给了工场镜像
https://developers.google.com/android/nexus/images
阅读对应你电子设备的工场镜像,解压,把前面提到的几个adb组件放到同两个产物目次(当然,你完万能用PATH)。只必要那三个文档。
fastboot.exe AdbWinUsbApi.dll AdbWinApi.dll想配套办法从头启动到fastboot,然后运转flash-all.bat。
那个办法会抹掉智妙手机上的所有工具。
HTC的RUU也是接纳不异原理。