代码改变世界

mac上的android apk安装器

2012-09-30 08:39 onm 阅读(...) 评论(...) 编辑 收藏
android提供了各个平台上的adb和aapt工具,这两个工具都非常好用,adb是Android Debug Bridge,提供了一些调试Android设备的功能,对于apk安装器用到了,adb install/uninstall/devices等,install和uninstall容易理解了,就是安装和卸载apk用的,devices用于查看链接的Android设备。aapt是Android Asset Packaging Tool,适用于查看和更改apk包信息的工具,对于apk安装器用到了aapt dump badging功能,可以获取apk的信息,如应用名称,版本,图标等信息。 有了这两个工具,就可以做apk安装器了,现在各个类似的Android管理软件用的都差不多,就是通过这两个工具来做的。mac上怎么使用这两个东西呢,os x开发的话可以用NSTask这个类,来进行命令行应用调用,用法可以参考http://www.cocoachina.com/b/?p=63。然后就是解析执行后返回的结果,就是文本匹配工作,正则用的比较多。 特别说下对于apk中icon的处理,我是用unzip先解包,然后得到icon的png图片文件,然后ui上显示的是这个图片。 然后还有可以安装完后,在电脑端打开应用,通过android手机上的am工具来做。am猜是activity manager,可以通过设定intent来开启特定activity,通过aapt可以获取apk的启动activity,然后通过adb shell am start来启动activity,具体可看am的参数。 用到adb uninstall是因为,有的应用你可能已经安装,install时候会报错,然后可以通过uninstall先卸载,然后再安装。 忘了写mac应用设成文档类型的,然后匹配apk这个后缀,就可以做到双击apk然后启动这个安装程序来安装了。 总结,adb,aapt,am是一些很有意思,也很有用的工具。体验了一下objc和cocoa。   更新: 后来做了一个Mac OS上的应用,叫做谷麦,是一个mac上的android tool,实现了在Mac OS上一键安装apk的功能等。 地址:https://github.com/qhm123/droidmac