这就保证了apk包里的文件不能被随意替换 。比如拿到一个apk包后,如果想要替换里面的一幅图片,一段代码,或一段版权信息,想直接解压缩、替换再重新打包,基本是不可能的 。
如此一来就给病毒感染和恶意修改增加了难度,有助于保护系统的安全 。? res目录 res目录存放资源文件 。
包括图片,字符串等等 。res下有若干个子目录,主要为drawable,layout,xml 。
解包后,几乎所有可能的修改和编辑工作基本都在这里 。汉化ROM的主要工作就在这里 。
汉化ROM实际上就是汉化所有的apk应用程序的字符文件 。? assets目录 assets目录可以存放一些配置文件,这些文件的内容在程序运行过程中可以通过相关的API获得 。
下面以“设置”应用程序Settings.apk为例 。用WinRAR打开文件后,看到以上介绍的六项内容 。
现在,即使你已经对文件解压,你还是无法直接阅读每个文件的内容 。为了读出这些文件的内容,从而进行进一步的修改和编辑,你就必须具有相应的工具了(请到第二节) 。
2. APK应用程序的解包和打包工具 这一节主要介绍在Windows系统中常用的几个工具包,用来对apk应用程序进行解包、打包、反编译、解析 。所有apk工具包都要求java环境(这个我就不介绍了,自己学习去吧) 。
这些工具可以从网上各个论坛获取 。我在近一个月里收集了几个常用的工具包,我会打包上传与有志于对apk进行操作的机友分享 。
主要推荐有三个工具包 。1) apktool apktool可能是当今最为流行的apk工具包,由解包、打包、签名程序组成 。
【手机apk怎么写】被称之为“apk反编译利器” 。去Google一下apktool,有非常多的资源,无论是软件下载,还是使用教程 。
对非三星的应用程序进行操作,很好用 。打开apktool工具包,看到如下内容: Akp程序的解包和打包软件由2个程序来完成:apktool.jar 和 aapt.exe 。
另外提供一个批处理文件:apktool.bat,其内容为: java -jar "%~dp0\apktool.jar" %1 %2 %3 %4 %5 %6 %7 %8 %9 运行apktools.jar需要java环境(1.6.0版本以上) 。apktool.jar用于解包,apktool.jar和aapt.exe联合用于打包 。
testkey.pk8和testkey.x509.pem是签名程序 。解包命令: apktool d xxxxxx.apk ABC 这里“d”表示要解码 。
Xxxxx.apk是要解包的APK文件 。ABC是子目录名 。
解包的文件会放在这个子目录内 。打包命令: apktool b ABC yyyyy.apk 这里“b”表示要打包,ABC是子目录名,是解包时产生的子目录,用来存放所有解包后的和修改后的文件 。
yyyyy.apk是打包后产生的新的APK文件 。在上传的apk工具包里,已经另外加了两个批处理文件:Unpack-apk.bat和Repack-apt.bat 。
前者用于apk的解包过程,后者用于编辑后的文件的打包和签名 。把待解包的apk文件放到Unpack-apk.bat的同一个目录里,双击Unpack-apk.bat,apk文件解包开始,产生3个子文件夹,解包后的文件被放在Working_APK文件夹内 。
详细内容将在第二部分描述 。另外,批处理文件允许同时对多个apk文件顺序进行解包和打包 。
注意:文件名里不允许有空格,不能有中文 。使用前,要先安装框架文件:apktool if。
3. 怎么做apk APK是AndroidPackage的缩写,即Android安装包(apk),制作apk需要相应的程序来实现 。
APK是类似Symbian Sis或Sisx的文件格式 。通过将APK文件直接传到Android模拟器或Android手机中执行即可安装 。
apk文件和sis一样,把android sdk编译的工程打包成一个安装程序文件,格式为apk 。APK文件其实是zip格式,但后缀名被修改为apk,通过UnZip解压后,可以看到Dex文件,Dex是DalvikVM executes的简称,即Android Dalvik执行程序,并非Java ME的字节码而是Dalvik字节码 。
