前两天自己花钱买了块友善之臂的Mini6410开发板,国庆假期已经过去6天了,已经休息得有点饱和了,还是拿出来玩玩吧!之前之所以买这个Mini6410,一方面是便宜,另外一方面是这个板子可以跑Android。

之前只是在验货的时候跑过一次Android,也没有怎么玩,虽然接触Linux多年,但是对Java和Android还是一点不懂。这两天看了看《JAVA核心技术》和《Android Essential》,也算有了些了解,感觉在很多概念上和VC编程还是挺相似的。不过对于我这种做驱动的人来讲,还是把程序先跑到开发板上才是正道。

用的程序还是比较简单的Helloworld,只有一个Activity,一个TextView和EditText,这样比较简单,不太可能引入目标板上不能运行的包。

启动Android,连接到USB,PC上竟然一点反应也没有,仔细看了一下Log,发现有“android init”,不过跟踪了一下源码,printk了几个Log发现原来在s3c_udc_otg.c中usb_gadget_register_driver的时候返回了错误,错误的原因是有些函数在注册的时候并没有提供,估计友善的人也没怎么用过这个东西,不然不会发现不了。USB的代码要修改起来需要费点时间,估计一时半会搞不懂。

可是后天就要上班了,还是走其它途径吧,想到了是否可以用TCP/IP,其实我强烈怀疑USB的ADB走的可能也是TCP/IP。Mini6410在运行Android的时候以太网默认是关闭的,首先打开它并配置IP地址:

ifconfig eth0 up

ifconfig eth0 192.168.1.13

然后就可以ping开发板了

在PC上使用adb就可以连接开发板了:

adb connect 192.168.1.13

远程返回:

connected to 192.168.1.13:5555,其中5555是默认的端口,此时就已经连接上了开发板上的adbd守护程序了,使用netstat可以看到连接的状况

此时可以使用

1)adb shell 操作开发板,其实就相当于一个telnet,可以执行各种shell命令

2)使用adb install helloworld.apk安装程序,安装完以后在菜单里面就会多出一个helloworld的图标了,不过在install之前要把目标板的/data目录和/data/app目录都设置成777的权限,就是都可以执行和读写,不然在PC端会返回错误: INSUFFICIENT_STRORAGE,不知道为何返回这个错误

3)adb push 和adb pull上载和下载文件

点击菜单中的helloworld就可以运行了,其实后来发现好像只要把helloworld.apk放在/data/app下面就可以了,不用adb也行,但是Mini6410竟然连命令cp都没有,看到.apk在SD卡里面也没办法,叹!这个实验对我的最大震撼在于Java的可移植性,在PC上编译的结果在ARM开发板上就可以直接运行,想起那些使用MiniGUI的日子,真是相当的痛苦啊。

 

 

 

 

 

更多相关文章

  1. 对于android触摸事件模型的一些理解
  2. Android(安卓)Window类解析
  3. 想抢先体验Android操作系统的魅力吗?那就使用Android(安卓)LiveCD
  4. Android(安卓)low memory killer 详解
  5. [置顶] Android实训课程之一改错The connection to adb is down,
  6. 想抢先体验Android操作系统的魅力吗?那就使用Android(安卓)LiveCD
  7. Android4.0 Design之UI设计易犯的错误2
  8. android的编译和运行过程深入分析
  9. 当 PC 开始运行 Android……

随机推荐

  1. android的ndk编译时错误__android_log_pr
  2. MOTODEV Studio for Android(安卓)安装
  3. Android之设置横、竖屏方法
  4. android卡片布局CardView
  5. Android高级知识—思维导图
  6. Android查看内存和CPU~
  7. Android获取 应用程序大小,数据大小,缓存大
  8. Android 实现 按钮从两边移到中间动画效
  9. android的KeyGuard
  10. Android(安卓)SDK更新后 ADT R17 E/Andro