mtk平台目前只支持使用flashtool下载,android原生态的命令下载已经不能用了。作为已经习惯了用ubuntu开发的我们来说,的确是一件非常不爽的事情。那怎么办呢,用回windows???只有这一条路了吗???不!坚决不!!!在windows下开发android,这是一个多么可笑的事!况且开源软件是大势所趋,重回windows开发环境无异于啃回头草!于是。。我们决定。。。用vbox!!!
ok, let's go!
|
1、打开虚拟机控制台,点击“设置”
2、在左边选中“USB”选项卡
3、点击右边“添加一个空的筛选器”
4、确定
主要包括:
1、flashtool
这个要找到合适的版本,不一定是最新的,而是对应平台适配的。
2、Cable Driver\USB\For Android\MT6573 USB Driver
这个驱动是要在flashtool下载最开始时识别机型要用的,通俗地说就是在出现红色进度条要用的
3、USB VCOM Driver\2K_XP_COM
这个驱动是USB转串口驱动,是正式传输bin文件时要用的(出现黄色进度条时)
4、待下载软件
这个文件主要是告诉linux在android手机插入时要按什么规则处理。
步骤:
1、输入命令查看手机对应的usb端口ID
由于我们现在是要烧写软件,故连接USB的方式要完全按照下载软件来,即:
(1)移除电池;
(2)按住烧写键(我这里是home键);
(3)插入USB;
(4)装上电池;
(5)等1~2秒钟,松开烧写键;
现在,就可以输入命令查看usb端口了:
$:lsusb
查看结果,例如:
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 004 Device 013: ID 0e8d:0003 MediaTek Inc. MT6227 phone Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 003 Device 003: ID 046d:c045 Logitech, Inc. Optical Mouse 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 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
然后配置51-android.rules文件:
$:sudo gedit /etc/udev/rules.d/51-android.rules
把手机的USB ID按照下面的格式加进入
SUBSYSTEM=="usb", SYSFS{idVendor}=="0e8d", MODE="0666"
注意,这里的"0e8d"就是从上面列出的usb端口中选定的,一定要选对了(如果不确定可先连接手机输入lsusb,然后移除再lsusb,对比结果即可)
1、启动虚拟机,进入windows系统;
2、按照“三-1”中(1)~(5)的步骤连接手机;
3、windows界面的右下角有一个usb连接头一样的图标,右键点击之
4、点击端口号与手机一致的usb列表,这样对应的usb设备(也就是我们的手机)就连接到虚拟机中的windows系统了:
若之前在第三步未配置51android.rules的话,则这个列表会是置灰的不可选状态:
5、此时windows系统会提示找到新硬件,要安装驱动,找到准备的“Cable Driver\USB\For Android\MT6573 USB Driver”安装即可
6、解压并打开flashtool,选择scatter文件
7、设置flashtool
(1)options > 选中"usb Mode";
(2)options > DA Download All > Battery > Without Battery
8、点击"Download"
9、移除手机,按住烧写键,再连接上usb线
此时应该会出现红色进度条了,但仅仅是会出现红色进度条而已,而后则会一直卡在这,原因是我们还没有安装串口驱动,即上面所准备的第2个驱动程序。
10、此时重复步骤3、4步
11、这时提示安装驱动时则找到“USB VCOM Driver\2K_XP_COM”即可
12、拔出usb线,flashtool可不关闭,重复8~9步
这时在红色进度条完成后,还是会卡住,但这时我们只要仿照3、4步,再次点击右下角的usb图标,再点击对应的usb列表,则能继续下去,出现软件烧写的黄色进度条了。