apk

android反编译

孤街浪徒 提交于 2020-04-03 05:48:07
常用反编译方法: 1.先将.apk改为.zip或者.rar用winrar加压得到classes.dex文件 2.用dex2jar工具将.dex转为.jar,然后用jd-gui就可以打开.jar查看源文件。 command: dex2jar.bat classes.dex 代码混淆: 1.混淆后能编译,只是类名,函数名看着没那么清晰了。 2.根目录下project.properties中设置配置文件路径。 proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt(前者是基本文件,后者是个性化文件) 3.release方式生成apk. 解压apk包,res目录下的xml怎么查看呢。用文本工具打开是乱码。 使用AXMLPrint2.jar对xml进行反编译,报错(java.lang.ArrayIndexOutOfBoundsException) 报错原因:AndroidManifest.xml中android:minSdkVersion不能大于7 build时将android:minSdkVersion改为7以下就可以使用AXMLPrint2.jar进行反编译。 command: java -jar AXMLPrint2.jar main.xml >main.txt

apktool反编译资源

送分小仙女□ 提交于 2020-04-03 05:46:10
java -jar baksmali.jar -x SecGallery2_Galaxy.odex ( SecGallery2_Galaxy.odex为待反编译的,这一步会生成out文件夹 ) java -Xmx512M -jar smali.jar out -o classes.dex //(deodex 利用out文件夹生成classes.dex文件) dex2jar.bat classes.dex note:反编译是工具尽快要新,包括dex2jar.bat( http://code.google.com/p/smali/ http://code.google.com/p/dex2jar/downloads/detail?name=dex2jar-0.0.9.15.zip ) 在执行反编译资源时先执行下面命令: apktool if C:\framework-res.apk apktool if C:\tzframework-res.apk 红色代表framework资源的安装位置 然后执行apktool.bat d Mms.apk 来源: https://www.cnblogs.com/garygou/archive/2013/01/25/2876733.html

【ReactNative】Mac下分分钟打包 Android apk

时光毁灭记忆、已成空白 提交于 2020-04-01 14:11:20
时间:2016-11-20 09:17:07 地址: https://github.com/zhongxia245/blog/issues/52 Mac 下 ReactNative如何打包构建Android apk 的应用。该文章还差一个 打包发布到各个平台的教程 总结 打包 jsbundle代码 生成签名 添加签名到app中 打包成apk(打包前也可以先运行安装在手机上测试) 把JS代码,打包成 index.android.jsbundle 参考文章: ReactNative打离线包-android篇 react-native bundle --entry-file demo/index.js --bundle-output ./android/app/src/main/assets/index.android.jsbundle --platform android --assets-dest ./android/app/src/main/res/ --dev false 打包APK 《官网打包APK教程》 一、操作步骤: 1. 生成签名 生成一个有效期10000天的证书,证书为: my-release-key.keystore keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias

APK文件浅析-Android

≡放荡痞女 提交于 2020-04-01 14:06:55
2011~2015,5年时间,断断续续学习了Android。 最近打算在2011年2个月认真学习的基础上,深入学习下。 由于有之前的Android基础,加上N年的Java等变成经验,自我感觉Android应用开发还是比较简单的。 至少相比iOS开发来说。 继续坚持自己的习惯,写点自己的体会,总结自己的经验。 学了又忘了,没啥用啊~ Android打包之后,生成了APK文件。 APK文件其实是个zip文件。 比如,FileExplorer.apk,把后缀改成zip,就成了 FileExplorer.zip。 类似的还有Excel文件,比如FansUnion.xlsx,改后缀FansUnion.zip,解压之后: _rels docProps xl [Content_Types].xml 有兴趣的可以自己试试哦~ 解压之后: META-INF --CERT.RSA --CERT.SF --MANIFEST.MF(Java打包的程序,基本都有这个文件.最初以为和Java中的一样,后来发现不是的。) (1)MANIFEST.MF:这是摘要文件。程序遍历Apk包中的所有文件(entry),对非文件夹非签名文件的文件,逐个用SHA1生成摘要信息,再用Base64进行编码。如果你改变了apk包中的文件,那么在apk安装校验时,改变后的文件摘要信息与MANIFEST.MF的检验信息不同

APK文件浅析-Android

妖精的绣舞 提交于 2020-04-01 13:35:42
2011~2015,5年时间,断断续续学习了Android。 最近打算在2011年2个月认真学习的基础上,深入学习下。 由于有之前的Android基础,加上N年的Java等变成经验,自我感觉Android应用开发还是比较简单的。 至少相比iOS开发来说。 继续坚持自己的习惯,写点自己的体会,总结自己的经验。 学了又忘了,没啥用啊~ Android打包之后,生成了APK文件。 APK文件其实是个zip文件。 比如,FileExplorer.apk,把后缀改成zip,就成了 FileExplorer.zip。 类似的还有Excel文件,比如FansUnion.xlsx,改后缀FansUnion.zip,解压之后: _rels docProps xl [Content_Types].xml 有兴趣的可以自己试试哦~ 解压之后: META-INF --CERT.RSA --CERT.SF --MANIFEST.MF(Java打包的程序,基本都有这个文件.最初以为和Java中的一样,后来发现不是的。) (1)MANIFEST.MF:这是摘要文件。程序遍历Apk包中的所有文件(entry),对非文件夹非签名文件的文件,逐个用SHA1生成摘要信息,再用Base64进行编码。如果你改变了apk包中的文件,那么在apk安装校验时,改变后的文件摘要信息与MANIFEST.MF的检验信息不同

[转]android开发工具大全

▼魔方 西西 提交于 2020-03-31 02:51:59
(1) zipalign工具:根据数据结构对齐标准DSA对APK程序包进行对齐优化,从而提高APK应用程序与Android系统交互效率。 (2) traceview工具:性能分析工具,根据Android应用程序产生的跟踪日志生成性能分析图。 (3) sqlite3工具:SQLite数据库操作工具,包括对数据库中表的增,删,改,查操作。 (4) monkey工具:压力测试工具,在模拟器或设备(adb shell)中,向Android系统发出一系列伪随机的用户事件流。 (5) mokeyrunner工具:Android系统提供了一套API,可自定义命令或事件流(Python文件)。并通过monkeyrunner工具执行自定义的事件流。 (6) mksdcard工具:创建SDCard工具。 (7) layoutopt工具:布局文件优化工具 (8) hprof-conv工具:内存分析工具,显示詳細的内存占用信息,指出可疑的内存泄漏对象。  使用方法: a. 在代码中加入:android.os.Debug.dumpHprofData("目录 + 文件名(/data/tmp/input.hprof)"). b. 使用hprof-conv将生成的文件转换成MAT工具可识别是的文件(hprof-conv input.hprof output.hprof). c. 用MAT工具打开转换好的文件。

Android热修复方案比较

我与影子孤独终老i 提交于 2020-03-30 07:17:38
热修复的特点:无需重新发版,实时高效热修复;用户无感知修复,无需下载新的应用,代价小; 修复成功率高,把损失降到最低。 一、热修复开源方案和使用情况 方案名称 方案开发公司 开发时间 Github星评 Robust 美团 2016年 54 Andfix 阿里 2015年 4994 Nuwa 个人开发者(dex文件补丁) 2015年 2588 Dexposed 不考虑,需要root权限 Amigo 饿了么(apk补丁) 2016年 1031 Tinker 微信(apk补丁) 2016年 7891 RocooFix Nuwa改进版 2016年 1299 Robust方案 1.原理:Robust插件对每个产品代码的每个函数都在编译打包阶段自动的插入了一段代码,插入过程对业务开发是完全透明。 运行过程 在Application中通过DexClassLoader,将补丁class文件事先加载,然后之后会调用新的额 class以替换旧apk中的bug class文件,通过反射进行新代码的调用,以达到热修复目的。 具体过程请参考 Android热更新方案Robust 2.补丁制作 Robust的补丁制作,除了打包dex文件,更需要使用美团的插件将每个class文件插入代码,在编译阶段侵入代码 对运行效率等方面都有影响 优点 1.高兼容和适配性,由于是java代码层面的替换调用,基本不涉及各个版本

Android 应用程序签名

烂漫一生 提交于 2020-03-30 04:44:29
本文主要介绍 Android 应用程序签名的相关理论知识以及怎样公布 Android 应用程序。 1. 签名的概念 为大家所熟知的日常生活中的签名,它是代表某个人的特殊标记,用于唯一标识某个人。而 Android 应用程序的签名的本质与日常生活中的签名是一样的,应用程序中的签名也开发人员在应用程序中打上的一种特殊标记。别人在看到这个标记时,他会知道是这个应用程序与你有关或者是你开发的,而不是别人。 2.Android 应用程序一定要签名吗 是的, Google 公布的 Android 系统要求每一个公布的应用程序都必须签名。 Android 应用程序的签名是用来建立程序的开发人员与程序包之间的信任关系,当更新应用程序时, Android 系统要求新 / 旧两个应用程序的签名必须一致。 与 windows 上签名的意义不同的是, Android 的签名不须要权威的数字证书机构认证。不会用于决定终端用户能够安装哪些应用程序。它是程序的作者自己完毕的,是 Android 系统中程序包的一种自我认证的机制。 3.Debug 签名 假设你是一个刚入门的开发人员,你会发现你开发的应用程序没有经过自己的签名也能够安装在 Android 系统的机器上,这是由于 ADT 工具使用 debug 数字证书 ( 存在于 debug.keystore) 自己主动为每一个处于开发阶段的应用程序打上了

安卓应用程序插件化开发框架 -AAP Framework

為{幸葍}努か 提交于 2020-03-29 17:11:29
介绍 这个框架的初衷,是为了方便让程序模块化、插件化,将一个apk应用拆分为多个apk。 不明白这个插件化、模块化是怎么回事的话,可以看看腾讯微信的安卓客户端中的插件配置。 在这里我会以腾讯微信为例,如何使用这个框架。 ( 腾讯微信并不是真正的插件化,它是伪的,插件并非与它的主程序分离开,结果就是每次插件的更新,都必须以整个程序的更新为代价 ) 都能干啥 框架的思想,主要是通过apk清单文件中的sharedUserId属性来吧多个apk融合为单一的dalvik虚拟机,也就是融合为一个进程,这样就变相逾越了android框架中不同apk权限不同无法互通的鸿沟(rpc啦什么的其它的毕竟不如这个来的实在)。 从最简单的皮肤插件到复杂的涉及数据库的拓展功能,从普通activity跳转到把插件的activity转变为view并附加到主程序中的拓展功能,都是可以通过本框架来实现的,当然,本框架只是提供了一种途径,如何编码还得靠自己。 本人能力有限,可能有一些错误、疏漏或者不足之处,请不吝指教,我的博客地址在左下角,或者我的邮箱,都可以联系到我。 ps:下面会以腾讯微信为例,这里声明一下,本人没有对微信安卓客户端进行任意形式的反编译与破解工作,只是看球半天进行简单的猜测而已。 框架结构 本插件框架由三个包组成: org.igeek.android.pluginframework

How to generate dev APK file without asking for dev settings server ip in react native [duplicate]

安稳与你 提交于 2020-03-27 11:44:42
问题 This question already has answers here : Build and Install unsigned apk on device without the development server? (11 answers) Closed 2 years ago . I am able to generate APK(not signed APK) file using android studio. if i install that apk then we need to enter Dev server ip address in dev settings then only app working. Now how to generate apk without need of giving any server ip? Thanks. 回答1: For debug apk you need to manually create the bundle for a debug build and generate apk using