有,由友善工程师编写,介绍如何搭建 Android 开发环境以及编写Android应用软件,并在Tiny6410和Mini6410上调试。
文档的下载地址:
在android源代码根目录执行
. setenv
再到你要编译的模块的目录执行以下命令即可。
mmm ./
注意,但并不是所有模块都可以单独编译的,一般app和lib通常都可以单独编译,但一些公共的库就不行。
1) 通过miniUSB线,在eclipse运行程序时,会自动下载并运行你的程序
2) 通过adb命令来安装
3) 拷贝到SD卡,在开发板上点击apk文件进行安装
4) 通过ftpget下载apk文件到开发板,通过命令 pm install xxx.apk 进行安装, (xxx.apk改成你的apk文件名)
注:愤怒的小鸟在安装前要将SD卡拨出。
程序一定要静态编译,即在arm-linux-gcc/arm-linux-g++上加上-static参数。
使用libfriendlyarm-hardware.so类库中的接口可以实现,具体可参考FriendlyARM编写的《Android 2.3 开发指南》,该文档下载地址:http://www.arm9home.net/read.php?tid-10057.html
当然也可以自已编写JNI类库来实现,可参考《Mini6410之Qt和Qtopia编程开发指南》。
不开放,可以自已用JNI写一个自已的lib,
至于驱动的接口,可参考文档《Mini6410之Qt和Qtopia编程开发指南》,文档下载地址:http://www.arm9home.net/read.php?tid-9360.html
友善已经按标准的Android接口编写了Camera HAL层的程序,所以你用标准的Android API就可以访问摄像头了,
如果你使用的是 210 开发板,在 android 4.0.3 的源代码目录,这里有我们写的一个开源Demo:
android-4.0.3_r1/device/friendly-arm/mini210/USBCamera
如果你使用的是 4412 开发板,并使用 Android 5 系统,可以从github上获得我们提供的一个Demo:
https://github.com/friendlyarm/android_CameraDemo
通过修改 /etc/ppp/peers 下面的pppd脚本来实现
Android2.x对鼠标支持并不好,就算你插上鼠标并能成功识别,Android也只是把你的鼠标识别成5向滚轮键而以,界面上并不会出现鼠标光标。
不过,开源社区有一些项目意在将ANDOIRD移植到PC上网本上,他们自行在ANDROID中增加了鼠标的支持,例如 android-x86 项目,你可以参考他们的实现,自行定制 Android 源代码。
Android 4~5 则已经很好地支持鼠标了。
位于 drivers/char/mini6410_leds.c
华为E1750在Mini6410和Tiny6410通过命令行拨号的方法是,在终端上执行以下命令:
3g-ppp /system/etc/3g-modem/12d1.1446.12d1.1001
call-ppp wcdma
执行以上命令后,就会在后台进行拨号了,然后进入目录/var/run/,查看是否产出文件 ppp0-ok,如果有,则表示已拨号成功,ppp0-ok文件内会存储IP地址和DNS。
要断开网络,kill pppd进程ID 即可。
其它型号的3G上网卡可以在图形界面上拨号成功后,通过ps查看进程列表来获得3g-ppp的命令行,再结合上面所说的步骤进行。
则最简单的方法是定制Android源代码,用C编写一个service程序,然后将该service添加到 init.rc 中即可开机自动运行了。
使用 linuxrc 主要是为了检查是否需要校准触摸屏,如果需要(通常发生在第一次开机时)就调出校准画面,最终还是会调用 Android中的init的。
FriendlyARM.cpio 是用于启动时的控制,比如在mount根文件系统前检测一下一线触摸,对于电容屏用户,可以禁用它,如果要用ramdisk,也必须禁止用它。
linuxrc主要是用于一线屏时的校准,如果是电容屏,可以去掉,换成android的init 即可。
出现这种情况可能是你安装的ES文件浏览器已经更新,包名和窗口名攺变了,
导致UDISK应用无法调用你所安装的 ES文件浏览器,实际上U盘已经加载,你用你的ES文件浏览器,或其它FILE BROWER软件打开 /udisk 目录即可。
要注意以下事项:
1) 开机只插AV-IN摄像头
2) 内核要用 zImage_tvp5150
3) J11的跳针要跳到TVP5150的那端
先从光盘中解压 Linux 源代码,这里假设Linux源代码目录为 /opt/linux-3.5, 你要更换的图片为 /opt/logo.png;
第一步,将图片转换为ppm格式:
pngtopnm /opt/logo.png > /tmp/linux_logo.pnm
pnmquant 224 /tmp/linux_logo.pnm > /tmp/linux_logo_224.pnm
pnmtoplainpnm /tmp/linux_logo_224.pnm > /tmp/linux_logo_224.ppm
第二步,将ppm格式的图片替换掉默认的内核Logo:
cp /tmp/linux_logo_224.ppm /opt/linux-3.5/drivers/video/logo/logo_linux_clut224.ppm
第三步,参考用户手册,编译内核即可。
如果你在执行命令的过程中找到 pngtopnm 等命令,使用 apt-get install 或 yum install 来安装即可。
在烧写系统时,在FriendlyARM.ini中指定Mac地址
只需要在Linux-CommandLine或者Android-CommandLine中加上参数 ethmac 即可指定Mac地址,如下所示:
Android-CommandLine = root=/dev/mtdblock4 rootfstype=yaffs2 console=ttySAC0,115200 init=/linuxrc androidboot.console=ttySAC0 gs=0 ethmac=08:90:00:A0:02:99
另外,如果你使用的是 210 开发板的 Android 4.0.3, 还需要禁用图形界面的mac地址修改机制,在板子上测试时,可编辑 /system/etc/init.mini210.sh 文件,删除以下内容:
# Ehternet mac address
change_mac_address()
{
echo "set macaddress" >> /data/eth0-log.txt
/system/busybox/sbin/ifconfig eth0 down
/system/busybox/sbin/ifconfig eth0 hw ether $1
/system/busybox/sbin/ifconfig eth0 up
}
if [ -f /data/system/eth0-macaddress.conf ] ; then
echo "found /data/system/eth0-macaddress.conf" >> /data/eth0-log.txt
source /data/system/eth0-macaddress.conf
DEV_ADDR=`cat /sys/class/net/eth0/address`
if [ "$DEV_ADDR" = "00:00:00:00:00:00" ]; then
change_mac_address $MAC
elif [ "$DEV_ADDR" != "$MAC" ]; then
change_mac_address $MAC
fi
fi
量产制作ROM时,在源代码目录,该文件位于 android-4.0.3_r1/device/friendly-arm/mini210 目录下,可作相应的修改再制作量产的ROM。