当前位置: 代码迷 >> Android >> android的apk封装
  详细解决方案

android的apk封装

热度:44   发布时间:2016-05-01 14:03:40.0
android的apk打包

1. 什么是apk文件

(1)定义:APK是Android Package Kit的缩写,即Android安装包。APK文件其实是zip格式,但后缀名被修改为apk,通过UnZip解压后,可以看到Dex文件,Dex是 Dalvik VM executes的全称,即Android Dalvik执行程序,并非Java ME的字节码而是Dalvik字节码。APK文件结构为:

  • META-INF:Jar文件中常可以看到
  • res:存放资源文件的目录
  • AndroidManifest.xml:程序全局配置文件
  • classes.dex:Dalvik字节码
  • resources.arsc:编译后的二进制资源文件

(2)机制:Android在运行一个程序时首先需要UnZip,再通过dexdump命令可以反编译,这样做对于程序的保密性和可靠性不是很高但符合发展规律。Dalvik Vm的执行文件被打包为apk格式,最终运行时,加载器会解压apk并获取编译后的androidmanifest.xml文件中的permission 中相关的安全访问。

(3)root权限与签名:如果你将apk文件传到/system/app文件夹下会发现执行是不受限制的,android rom中系统的apk文件默认会放入这个文件夹,它们拥有着root权限。但第三方程序并不是安放在这个文件夹的。

?

2. apk的打包

在Eclipse中,编译好的android project,在该project的bin目录下会自动生成一个apk文件,与J2ME不同,无需手动打包。只要代码有改动就自动 build,build出来的apk是签过名的,也可以在project右键菜单的Andoid Tools菜单下export签名的或未签名的apk。

?

3. 将apk安装到android simulator中

  1. 通过\android-sdk-windows-1.5_r1\tools\emulator.exe启动模拟器。这里要注意,这个命令只有在avd配置好后才可以使用,例如我有一个名为android3的avd,所以我要用如下方法启动emulator:
  2. 将要安装的apk文件copy到tools目录下(与emulator.exe同目录);
  3. cmd进入命令行输入,进入到\android-sdk-windows-1.5_r1\tools\目录下,输入命令:adb install ***.apk。

4. 将apk安装到android mobile中

1 楼 zhuhongyu 2011-09-29  
请问在真机测试的时候,是将bin下的apk直接拷到手机里,还是用Export unsigned apk呢?
  相关解决方案