Fling One

来源:互联网 发布:淘宝网儿童服装女装 编辑:程序博客网 时间:2024/05/22 13:48
  • 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了。

0 0
原创粉丝点击