基本过程如下:
1、将apk解包成一个文件夹
2、修改AndroidManifestxml中对应的包名
3、修改smali目录下中的包
4、将文件夹打包成apk
5、将apk重新签名
6、验证apk的签名
7、优化apk
8、安装apk,并测试
基本前提条件:
1、java的环境
2、Eclipse及android的开发环境(这个主要是用来进行调试)
3、text文本编辑器,本人用的是UEdit,也可以用类似的,主要是利用其查找及替换功能
这篇文章主要用来反编译apk得到源码,但google进行了反制,只能得到一些可读性不高的源码,这里主要是利用反编译apk生成程序的源代码和、XML配置、语言资源等文件
参考文献里提到的apktool-100tarbz2和apktool-install-windows-21_r01-1zip均可以从http//codegooglecom/p/android-apktool/上下载,下载好之后,将涉及的命令行目录及exe目录添加到电脑的path路径中,这样就便于操作了,如检测apktool是否可以,可以在命令行中输入apktool,如果可以识别就表示OK了。
参考了国内的技术文章后,有人发帖以上面的思路进行操作,但没有发技术文章,所以笔者只能去国外论坛中逛逛了,在Stack Overflow中,找到了相关的帖子,有老外留言"you can't do this",这个的确有违技术道德,但这里只做学习参考或交流。找到了一片帖子http://stackoverflowcom/questions/9218641/renaming-the-package-name-inside-an-apk,这篇帖子的回答给了比较详细的步骤(如上),他的情况比这个还稍微复杂点,简化后就是我要的结果,我就是按照这个基本步骤来的,回答的英文比较好懂(很有可能是国人)。
下面就按照上面的步骤一步步操作:我是已QQ浏览器40版的apk来操作的。
1、我的apktool安装到了E盘下的apktool目录下,所以的操作也在这个目录下进行 E:\apkTool
将apk复制到E:\apkTool目录下,重命名为qq40apk(这个没有要求,随意就好)
将apk解包 命令行下cd到E:\apkTool这个目录 apktool d qq4oapk qq4 将apk解包到qq4(这个也可以随意)这个目录
E:\apkTool\qq4这个目录下内容如下:
2、修改AndroidManifestxml中的包名,
将package后面的包名comtencentqbx改为你想要的新包名,我改为了comtianxiaotencentweb
将涉及原包名的comtencentqbx的相关activity的声明中的包名均改为新包名comtianxiaotencentweb
至于intent-filter里面的action名中包含原包名的,则可以不改,如果改的话,代码中也要相应的改变
另外,如果有provider,provider的authorities也得改,这个在同一手机上必须唯一,否则安装会失败
3、在E:\apkTool\qq4\smali目录下,有很多子目录,子目录下的文件多以smali结尾,这中文件的语法有点类似于汇编语言,具体原理就不深究了。
将smali目录下的所有文件中的原包名的声明形式com/tencent/qbx改为新包名com/tianxiao/tencentweb
具体如下,用UEdit在文件中替换即可,将目标目录指向E:\apkTool\qq4\smali,这个将近1000条左右
如果之前改为action里面的包名,也要将字符串形式的包名comtencentqbx改为comtianxiaotencentweb
如果有provider也要讲原来的authorities值改为在AndroidManifestxml中新改的authorities值。
4、将E:\apkTool\qq4重新打包为apk
apktool b qq4 newqqapk
5、将新的newqqapk 重新签名
签名的方法很多,一主要是手动生成签名,用命令行签名
我采用的现成的,下载了一个Auto-sign的文件夹,进行了签名,这个比较简单,网上帖子很多,就不赘述。
新签名后的apk名为 newqq4signedapk
6、验证签名 是否正确
jarsigner -verify -verbose -certs newqq4signedapk
一般来说,没问题,略过
7、优化apk
zipalign -v 4 newqq4signedapk latestqqapk 优化过的apk名为latestqqapk
8、安装新的apk,验证是否成功
这个最好把Eclipse打开,手机连上,查看logcat的安装信息。
我尝试了3次才成功,主要是忘了 provider的authorities的处理,
出错信息如下: Can't install because provider name qbx_bookmarks (in package comtianxiaotencentweb) is already used by comtencentqbx
原因很清楚,所以debug还是相当给力的,原来不喜欢debug,看debug过程可以更好的了解执行过程。
一、准备工作:
1、下载软件ArscEditorexe
2、下载软件AndroidResEditzip
二、修改 APK 软件名称:
1、右击 APK 安装包,用压缩软件解压到当前文件夹;
2、解压后找到文件“resourcesarsc”;
3、打开附件①,将文件“resourcesarsc”直接拖入ARSC编辑器的空白处中;
4、选择“string”标签,并找到键值“app_name”;
5、将“区域”切为CN(有的不用切换),然后在“区域值”中修改你想要的软件名字,修改好后点击“保存当前值”;
6、点击“文件”,选择“保存”,并覆盖保存;
7、右击 APK 安装包,用压缩软件打开;(注:无需解压)
8、将修改好的“resourcesarsc”文件直接拖入进安装包内并确认覆盖原文件;
三、重新签名:
1、打开附件②所得到的文件夹,并打开签名工具“AndroidResEditexe”;
2、选择“签名” - “签名 apk 文件”;
3、选择刚刚修改好的 APK 软件,并点击“立即签名”;
4、弹出窗口“签名完成”,即可;
1、首先打开apk反编译软件,点击“打开”一个apk。或者直接把需要反编译修改的apk拖入到窗口中。
2、如果apk反编译成功了,下方就会显示成功的提示,如图所示。
3、接下来点击“工程管理器”,选择“AndroidManifestxml”文件,如图所示。
4、AndroidManifestxml文件中的android:versionName对应的数值就是版本号,如图所示。
5、如果想要修改版本号,直接修改android:versionName数值即可,改好了记得点击一下保存图标,如下图所示就完成了。
压缩包怎么变成apk
压缩包怎么变成apk,在现实生活中,我们在办公的时候,很多人都会使用压缩包解压一些文件,这也是一种常见的办公软件了,那么下面为大家分享压缩包怎么变成apk。
压缩包怎么变成apk1首先查看一下zip文件里面是否有apk文件,如果没有就可能是apk文件被改成zip后缀了,可以修改过来。
将zip改为apk步骤:
步骤一:打开我的电脑→点击工具→文件夹选项→查看→向下拉找到隐藏已知文件的扩展名并去掉前面的“√”。→确定后退出;
步骤二:找到zip文件→右击并点击重命名→将后缀zip改为apk→完成。
apk文件怎么安装方法
1 参考经验如下,下载自己需要的apk文件
2 找到自己下载好的apk文件,
3 通过即时通讯软件q~q或者tim将下载到的apk发送到手机端,如下图所示。
4 打开手机软件接收apk文件,并点击该apk
5 步骤4后,点击下图所示的进行安装,等待安装完成即可。
6 安装完成后,点击打开,即可以打开app
压缩包怎么变成apk2
怎么把zip文件转换为rar文件
首先准备好你的zip格式的文件,然后右击鼠标,在弹出的窗口中选择用winRAR打开选项。
接着进入到软件的界面,选择菜单栏的工具选项。
在弹出的下拉列表中选择转换压缩文件格式选项。
接着进入到转换压缩文件的界面,选择右下方的压缩选项。
接着进入到压缩格式设置的界面,这里选择压缩文件格式为RAR,然后点击确定。
接着返回到之前的转换压缩文件界面,直接点击左下角的确定选项。
接着就是转换压缩文件的过程,在界面会有进度条显示,转换完成关闭界面即可。
最后,到保存的文件夹位置就可以看到转换好的rar格式的文件,这样就成功转换完成了,教程到此结束!
压缩包怎么变成apk3
zip文件怎么变成rar
双击打开文件
双击打开zip压缩文件。
点击工具
点击界面的工具选项。
点击选项
点击列表的转换压缩文件格式选项。
勾选RAR
勾选界面的RAR选项。
点击确定
点击界面的确定按钮完成转换。
不需要解包跟打包,直接修改就可以,修改的的方法。
如下参考:
1将需要修改的apk包复制到100apktool的路径中。注意:您需要将文件名更改为123apk,如下图。
2打开程序apktool。cmd,如下图。
3显示主界面有详细说明。我们只需要解压和压缩,如下图。
4输入1并按回车,首先解压缩,然后在当前路径下生成APK文件跟踪文件夹,如下图所示。
5在APK文件夹中输入specialzhidao,修改内容。添加资源文件(图像),如下图。
6输入3并按回车进行封装和数字签名,如下图。
7如果返回到Apktools/Apk/build路径,您将看到签名的通用Apk包,如下图。
欢迎分享,转载请注明来源:品搜搜测评网