- TS 1.0 底层 + Cast1.0 (TS版)
- TS 1.0 底层 + Cast2.0(美国发布版)
- Fling1 底层 + Cast2.0(未来)
Fling One的外网资料:
https: //github.com/flingone/B2G-FlingOne/wiki |
这个基本就是标准的firefox OS开发流程,开发过程中所有的代码都是从公网下载的。
第一次下载可能会比较费时间。所以我把大部分下载的内容定期存放在内网,方便大家下载代码。
具体命令如下
### 内部开发者 ######################## git clone appler:flingone/B2G-FlingOne && cd B2G-FlingOne GITREPO= 'appler:flingone/b2g-manifest' BRANCH= 'infthink/flingone-b2g2.0' REPO_INIT_FLAGS= '--repo-url=appler:tools/repo.git' ./config.sh -d rk30sdk ### 外部开发者 ######################## git clone git: //github.com/flingone/B2G-FlingOne.git && cd B2g-Flingone ./config.sh rk30sdk ### build过程中会下载xulrunner,见其他( 1 )### ./build.sh && ./flash.sh |
其他:
(1) 为了节省下载xulrunner时间,可以用本地的xulrunner
scp samba @10 .0. 0.201 : public /FlingOne/xulrunner- 30 .0a1.en-US.linux-x86_64.sdk.tar.bz2 ./gaia/ |
一些技巧:
单独编译、烧写gecko
./build.sh gecko ./flash.sh gecko |
从6月25号开始支持用fastboot烧写
## 进入fastboot模式 adb reboot fastboot ## unlock只需执行一次 ## fastboot -i 0x930 oem unlock fastboot -i 0x930 oem unlock_accept adb reboot fastboot ## 开始烧写 fastboot -i 0x930 flash boot rockdev/Image/boot.img fastboot -i 0x930 flash kernel rockdev/Image/kernel.img fastboot -i 0x930 flash misc rockdev/Image/misc_wipe_all.img fastboot -i 0x930 flash recovery rockdev/Image/recovery.img fastboot -i 0x930 flash system rockdev/Image/system.img fastboot -i 0x930 reboot |
fastboot找不到设备的,需要在/etc/udev/rules.d/51-android.rules中加入如下内容(文件如果没有就创建一个)
SUBSYSTEM== "usb" , ATTR{idVendor}== "0930" , MODE= "0666" , GROUP= "plugdev" |
使用gdb调试b2g,这对于跟踪b2g crash问题、或者了解C/C++代码上下文,非常有用:
./run-gdb.sh ## 这样是重新启动一个b2g,并用gdb调试 ./run-gdb.sh attach $pid ## 这样是attach到一个现有的b2g或者plugin-container,其中pid要从板子上用b2g-ps获得 4 .4kk update: 4.4 上用gdb启动b2g(上面第一种方式)会导致fd泄漏,从而引发b2g进程crash。 解决的办法参见https: //bugzilla.mozilla.org/show_bug.cgi?id=1051633 具体是启动进程后先在main()设置断点, 等跑到main()时,在gdb里调用“call close( 3 )”或“call close( 4 )”, 具体是 3 还是 4 到proc里去找gdbserver和b2g共有的那个socket fd, 然后再cont就可以调试了。 4 .4kk update: run-gdb.sh: LD_PRELOAD=\"$ld_preload_extra /system/b2g/libmozglue.so\" ==> LD_PRELOAD=/system/b2g/libmozglue.so |
关于外接鼠标
刚烧完机,设备上的usb默认是slave模式,这时可以用普通usb线连接、调试。
如果希望用鼠标,可以切换设备上的usb为host模式:
adb root adb shell 'echo 1 >/data/otg.cfg' adb shell sync |
然后拔掉普通usb线、换上otg线,就可以用鼠标了。
用鼠标配置wifi连接到网络后,可以用网络adb继续调试。
用鼠标进入settings ==> Wi-Fi ==> 点击对应AP看到ip地址,然后
adb connect 10.0 . 0 .XXX adb devices |
各种欢快的调试。。。
如果又不想用鼠标了,比如想用fastboot烧机,一定要切换回普通usb slave模式
adb root adb shell 'echo 2 >/data/otg.cfg' adb shell sync |
然后拔掉otg线、换上普通线,就可以用usb adb了。