红米手机联机调试
后记:从2013年10月18日开始,MIUI终于将红米的开发板开放出来了,这样就可以忽略以下的步骤了!直接刷个开发板的,但是在PC端输入:adb root,有些问题,就是这个命名运行了很久都没有退出,此时拔掉USB,重新连上,再次输入:adb remount,就可以看到remount success了,说明之前的root成功了。
2013年中秋前抢了个红米手机,今天要调试一个APP(安装可以考虑采用U盘模式,先COPY过去,然后通过文件管理来点击安装),发现红米手机上的设置页面,将“开发者选项”这个设置项给隐藏了(为什么说隐藏了,因为小米的工程师也需要这个设置来调试一个APP,如果去掉的话,会很麻烦,隐藏掉的话,版本控制起来比较方便些,当然也难保将来也有可能将其设置项的action给去掉),导致无法联机调试。查看源代码(android整个工程的源码,在/packages/apps/Settings下,查看AndroidManimest.xml中找到如下的设置:
在关于里面,连续点击三次 MIUI item就可以打开“开发者设置”
<activity android:name="Settings$DevelopmentSettingsActivity" android:label="@string/development_settings_title" android:clearTaskOnLaunch="true" android:parentActivityName="Settings"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <action android:name="android.settings.APPLICATION_DEVELOPMENT_SETTINGS" /> <action android:name="com.android.settings.APPLICATION_DEVELOPMENT_SETTINGS" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> <meta-data android:name="com.android.settings.FRAGMENT_CLASS" android:value="com.android.settings.DevelopmentSettings" /> <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID" android:resource="@id/development_settings" /> </activity>
BTW:可以去查看资源中的/packages/apps/Settings/res/values-zh-rCN/strings.xml中搜索"开发者".然后通过stringID,来搜索AndroidManifest.xml文件
),就可以通过action,将该设置页面给显示出来,调用代码如下:
Intent intent = new Intent("com.android.settings.APPLICATION_DEVELOPMENT_SETTINGS");
startActivity(intent);
很简单不是。
BTW:要想联机调试,还需要
1.将USB联机方式调整了:USB数据存储,但不打开
2.在Terminal中输入lsusb,可以看到如下的选项:
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 006: ID 2717:1228
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
则红色部分就是我们要的
3.将terminal中输入:
>cd ~
>echo 0x2717 >> android_usb.ini
4.再次打开“开发者设置选项”,先关闭“开启开发者选项”,再打开“开启开发者选项”以及其下的“USB调试”,此时会弹出“是否允许该机器。。。。”之类的提示,点击允许即可。
注:红米手机或者新版的MIUI V5,对所有的应用,开机自启动是关闭的,需要自己手动去打开:桌面=>系统与安全=》自启动管理
后记:从2013年10月18日开始,MIUI终于将红米的开发板开放出来了,这样就可以忽略以上的步骤了!
其实所有的Android手机上,只要连续点击Android的版本(在 设置 ---> 关于 里面),就能将开发者设置选项显示出来。