Difference between revisions of "Android FAQ"
(→在Fedora和Win7下安装USB ADB驱动均不成功怎么办?) |
(→在Fedora和Win7下安装USB ADB驱动均不成功怎么办?) |
||
Line 39: | Line 39: | ||
参考文档:http://www.arm9home.net/read.php?tid-10057.html | 参考文档:http://www.arm9home.net/read.php?tid-10057.html | ||
− | |||
− | |||
− | |||
− | |||
===Android下无法执行我编译写的C程序?=== | ===Android下无法执行我编译写的C程序?=== |
Revision as of 07:18, 28 July 2015
Contents
- 1 有没有Android相关的开发文档?
- 2 怎么编译单个模块?
- 3 如何将Android程序下载到开发板上运行?
- 4 如何在Linux下安装ADB驱动?
- 5 如何在Windows7下安装ADB驱动?
- 6 Android下无法执行我编译写的C程序?
- 7 如何在ANDROID上开发串口通讯的程序?
- 8 iTest和libfriendlyarm-hardware.so是否开放源代码?
- 9 如何在ANDROID中访问摄像头?
- 10 非大陆的移动运营商,如何进行3G拨号?在哪里可以修改拨号参数?
- 11 我想让Android支持鼠标和键盘,如何做呢?
- 12 Android2.3的LED驱动源代码在什么位置?
- 13 如何在命令行进行3G拨号?
- 14 Android下如何开机运行程序?
- 15 6410 android 版本为什么不用 init 而用linuxrc ?
- 16 210 android 内核中scripts/FriendlyArm.cpio的作用是什么?
- 17 /linuxrc 文件的用处是什么?
- 18 Android4可以看到已经加载U盘,但无法浏览文件?
- 19 210下无法使用TVP5150摄像头
1 有没有Android相关的开发文档?
有,由友善工程师编写,介绍如何搭建 Android 开发环境以及编写Android应用软件,并在Tiny6410和Mini6410上调试。 文档的下载地址:
Android2.3 (for Windows7):http://www.arm9home.net/read.php?tid-10057.html
Android2.2 (for Fedora9): http://www.arm9home.net/read.php?tid-9403.html
Tiny4412 Android硬件开发指南: http://www.arm9home.net/read.php?tid-82748.html
2 怎么编译单个模块?
在android源代码根目录执行
. setenv
再到你要编译的模块的目录执行以下命令即可。
mmm ./
注意,但并不是所有模块都可以单独编译的,一般app和lib通常都可以单独编译,但一些公共的库就不行。
3 如何将Android程序下载到开发板上运行?
1) 通过miniUSB线,在eclipse运行程序时,会自动下载并运行你的程序
2) 通过adb命令来安装
3) 拷贝到SD卡,在开发板上点击apk文件进行安装
4) 通过ftpget下载apk文件到开发板,通过命令 pm install xxx.apk 进行安装, (xxx.apk改成你的apk文件名)
注:愤怒的小鸟在安装前要将SD卡拨出。
4 如何在Linux下安装ADB驱动?
参考文档: http://www.arm9home.net/read.php?tid-9403.html
5 如何在Windows7下安装ADB驱动?
参考文档:http://www.arm9home.net/read.php?tid-10057.html
6 Android下无法执行我编译写的C程序?
程序一定要静态编译,即在arm-linux-gcc/arm-linux-g++上加上-static参数。
7 如何在ANDROID上开发串口通讯的程序?
使用libfriendlyarm-hardware.so类库中的接口可以实现,具体可参考FriendlyARM编写的《Android 2.3 开发指南》,该文档下载地址:http://www.arm9home.net/read.php?tid-10057.html
当然也可以自已编写JNI类库来实现,可参考《Mini6410之Qt和Qtopia编程开发指南》。
8 iTest和libfriendlyarm-hardware.so是否开放源代码?
不开放,可以自已用JNI写一个自已的lib, 至于驱动的接口,可参考文档《Mini6410之Qt和Qtopia编程开发指南》,文档下载地址:http://www.arm9home.net/read.php?tid-9360.html
9 如何在ANDROID中访问摄像头?
友善已经按标准的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
10 非大陆的移动运营商,如何进行3G拨号?在哪里可以修改拨号参数?
通过修改 /etc/ppp/peers 下面的pppd脚本来实现
11 我想让Android支持鼠标和键盘,如何做呢?
Android是为指尖触摸设备而设计的,对鼠标支持并不好,就算你插上鼠标并能成功识别,Android也只是把你的鼠标识别成5向滚轮键而以,界面上并不会出现鼠标光标。 不过,开源社区有一些项目意在将ANDOIRD移植到PC上网本上,他们自行在ANDROID中增加了鼠标的支持,例如 android-x86 项目,你可以参考他们的实现,自行定制 Android 源代码。
12 Android2.3的LED驱动源代码在什么位置?
位于 drivers/char/mini6410_leds.c
13 如何在命令行进行3G拨号?
华为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的命令行,再结合上面所说的步骤进行。
14 Android下如何开机运行程序?
则最简单的方法是定制Android源代码,用C编写一个service程序,然后将该service添加到 init.rc 中即可开机自动运行了。
15 6410 android 版本为什么不用 init 而用linuxrc ?
使用 linuxrc 主要是为了检查是否需要校准触摸屏,如果需要(通常发生在第一次开机时)就调出校准画面,最终还是会调用 Android中的init的。
16 210 android 内核中scripts/FriendlyArm.cpio的作用是什么?
FriendlyARM.cpio 是用于启动时的控制,比如在mount根文件系统前检测一下一线触摸,对于电容屏用户,可以禁用它,如果要用ramdisk,也必须禁止用它。
17 /linuxrc 文件的用处是什么?
linuxrc主要是用于一线屏时的校准,如果是电容屏,可以去掉,换成android的init 即可。
18 Android4可以看到已经加载U盘,但无法浏览文件?
出现这种情况可能是你安装的ES文件浏览器已经更新,包名和窗口名攺变了, 导致UDISK应用无法调用你所安装的 ES文件浏览器,实际上U盘已经加载,你用你的ES文件浏览器,或其它FILE BROWER软件打开 /udisk 目录即可。
19 210下无法使用TVP5150摄像头
要注意以下事项: 1) 开机只插AV-IN摄像头 2) 内核要用 zImage_tvp5150 3) J11的跳针要跳到TVP5150的那端