Android群  - 讨论区

标题:关于Android Native编程

2011年03月21日 星期一 12:08

想法也许土,但希望得到讨论:

      我们不把android设备给个人使用,而用于工业(类似维络城的使用环境),那么,除了界面我们采用Android SDK来开发外,后台的东西,我想借用已有的开源Linux 应用成果。

      不过经过这几天的寻找,我发现在Android平台,想实现我的想法并不容易:

      1. Android有个NDK,不过,那个东西感觉怪怪的;搞不清楚NDK上编的程序为什么还需要在VM里跑。

      2. 使用CodeSourcery编译器尝试编译了一个静态链接版本busybox,基本可以使用,但:

        2.1 如果程序多,全部采用静态编译,有点浪费空间。 

        2.2 wget无法直接使用,因为没有/etc/resolv.conf文件,android使用key value数据库中的net.dns1以及net.dns2这两个key来代替了这个文件。

      3. 从source.android.com链接找到prebuilt版本的toolchain,发现用起来也不是很舒服,感觉是pass1的gcc,还得自己拷贝bionic的C库和头文件。

        3.1 下载的toolchain这个过程也很复杂,根据  http://android.git.kernel.org/?p=platform/prebuilt.git;a=summary 来clone,可是大小呢?有2G...

2011年03月22日 星期二 12:48

1. Android 2.3开始支持native activity

2. 这里有个Android版本的busybox,不知道对你有没有用:

http://zedomax.com/android/busybox.zip

放在sdcard,运行sh ./installbusybox.sh安装

2011年03月22日 星期二 13:44

感谢回复!不过:

1. Native Activity 还是Activity。 我需要的是,比方说,传统Linux中的ssh工具,rcp工具加上cron,纯后台的东西。

2. 那个是一个编译好的busybox,我自己就能编译啊。使用adb push busybox /system/bin/busybox即可替换内置版本的busybox,无需使用sdcard来安装。

 

2011年03月22日 星期二 17:36

找了些资料,想了个办法,欢迎评论:

   0. root 设备,必要前提条件

   1. 做一个Debian系统,放在文件系统的一个目录下,例如 /sdcard/debian

   2. 静态版本的busybox,包含chroot命令

   3. 修改固件,修改 android文件系统中的 /init.rc ,将需要的服务程序通过chroot的方法来执行,例如 chroot /sdcard/debian /usr/bin/lighttpd 

   4. 一些系统兼容性相关的东西,按照需求修改:

       4.1 例如 /sdcard/debian/etc/resolv.conf 的定期更新,需要android系统来做定时程序来实现。

 

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2024

    京ICP备05028076号