第一次接触电视盒子的开发,遇到一些坑,这里记录下Rom包修改和升级的方法。
这边使用的硬件是:
Amlogic S905x 2GBx16GB
准备工作:
资源下载:http://pan.baidu.com/s/1qYHLEPY
1、ROM包(aml_upgrade_package.img)
2、Customization Tool(aml解压包工具)
3、USB_Burning(烧入工具)
修盖Rom包:
第一步:解压
打开Customziation tool工具:
点击加载,选择解压项目,如图:
选择需要解压的aml_upgrade_package.img。完成解压。
查看文件包:
解压成功后,能获取到“产品信息”,“基本信息”,“系统APK”等信息。
这里我们只说明如何添加系统内置apk。
我们点开“高级” --> “System”
打开文件夹:(如下图)
文件结构:
\system\app
在这个文件夹下的程序为系统默认程序(如:信息、音乐播放器、相机等),自己安装的软件将不会出现在这里,而是\data\app文件夹中。
\system\bin
这个目录下的文件都是系统的本地程序,从bin文件夹名称可以看出是binary二进制的程序,里面主要是Linux系统自带的组件(命令)
\system\etc
从文件夹名称来看保存的都是系统的配置文件,比如APN接入点设置等核心配置。
\system\fonts
字体文件夹,除了标准字体和粗体、斜体外可以看到文件体积最大的可能是中文字库,或一些unicode字库,从T-Mobile G1上可以清楚的看到显示简体中文正常,其中DroidSansFallback.ttf文件大小 。
\system\framework
framework主要是一些核心的文件,从后缀名为jar可以看出是是系统平台框架。
\system\lib
lib目录中存放的主要是系统底层库,一些so文件,如平台运行时库。
\system\media\system\media\audio
铃声音乐文件夹,除了常规的铃声外还有一些系统提示事件音。
\system\sounds
默认的音乐测试文件,仅有一个test.mid文件,用于播放测试的文件。
\system\usr
用户文件夹,包含共享、键盘布局、时间区域文件等。
添加三方内置apk:
我们放进内置系统apk一般都需要用到系统权限。
可以参考:http://www.jianshu.com/p/47265c8899b5 签名自己的apk包。
把apk包放入/app文件夹中,如果有so文件,也一并放入,如图:
** lib文件夹中放入的就是so文件(如果不放,apk启动会失败) **
压缩:
这里我遇到了一个坑,在压缩之前,需要替换Uboot文件。
点击“高级” --> “Uboot”
最后点击“压缩”,打包完成。
烧录固件:
打开USB_Burning_Tool:
点击“文件”-->“导入烧入包”
其他烧录配置使用默认就好,点击“开始”,等烧录成功后点击“停止”。完成烧录。
连接硬件
有可能会出现硬件连接不上问题。
1、检查线是否有问题
2、按着‘reset’键不放,再插入usb线,等待几秒。
开机崩溃,进入boot界面
开始我修改过的Rom包一直都会出现这个问题。
遇到这种情况,一定要使用我提供的rom包,在压缩之前替换Uboot文件。