Android项目包装apk和apk反编译,xml反编译
一、项目和一般原则其不足之处包
(1)开发一个简单的项目。当发布了APK档。假设我们不使用签名的方式,直接地bin文件夹中找到*.apk档。非常方便,但是,当我们在使用的用户,可能有其他方案覆盖安装。例的详细说明,下面的:
(2)我们新建一个项目Test文件夹结构例如以下,并把它公布到模拟器上。得到我们的打包文件Test.apk
(3)然后我们在看模拟器中的文件文件夹信息。我们在安装的应用,都会在安卓机器上的data----data---详细的安装文件夹,比如我的是:com.example.test
这里的com.example.test是在,项目文件夹下的AndroidManifest.xml文件里。因此我们能够改动他的文件名
(4)到这里。假设遇到同样的安装文件夹名,就有可能覆盖我们的应用程序,造成恶意的破坏!
二、带有数字签名的打包方式
(5)那我们就须要使用签名的方式。打包我们的软件。步骤非常easy。点击项目右键---Android-Tools---Export Android Application--然后后边的就不在介绍。依照自己需求进行就可以!
三、apk的反编译实现过程
(6)在上一步中,我们已经生成了一个签名的apk文件Test.apk然后我们使用解压软件,解压,
上图既是解压后的文件夹。各种配置文件都在。就是缺少我们的源文件和R类等
(7)当中classes.dex文件,就是我们项目中src文件夹下源代码的编译,二resources.arsc既是我们R类中的编译文件
(8)如今我们開始反编译,查看当中的源文件和R类
(9)准备工具dex2jar和JD-GUI这两个工具网上非常多。搜索下载就可以(http://yunpan.cn/cfpRvDD8QJcKi 提取码 c156)
(10)開始:将classes.dex文件复制到我们的工具dex2jar文件文件夹下:
(11)然后在上图中的地址栏中将地址删除然后敲入cmd回车(这种话我们能够直接定位到该文件夹下!
很好使)或者自己手工找到该文件夹下。
(12)然后运行dex2jar.bat 后边加上刚才拷贝的要反编译的文件calsses.dex
(13)然后就会在dex2jar工具下生成一个jar文件(到这里这个jar还仅仅是class文件须要使用下一个工具才干够)
(14)然后将生成的class_dex2jar.jar文件拖入到第二个工具JD-GUI中,就能够看到了
(15)另外我们还能够点击file--save all sources生成源码的文件,这个就不上图了,源码有了剩下的是杀是刮随你便
(16)到此为止,已经完毕对软件的反编译。这种话我们能够轻松愉快的阅读别人的源码了。
/*********************************************************************更新内容:反编译xml文件**************************************************/
下载工具: http://pan.baidu.com/s/1bnErJSr提取码 wt8c
下载后解压然后将apk文件拷贝到这里、比方我这是lashow.apk
在地址栏中输入cmd,回车--命令apktool-v2.0.RC2.jar d lashow.apk
注意:可能非常多朋友们反编译的时候会出错:意思就是找不到文件等。这个时候须要更新一下apktool的版本号了。
然后结束的时候。你会看到有一个新的目录 ,在里面你可以找到你想要的是什么
版权声明:本文博主原创文章。博客,未经同意不得转载。
相关文章
- android View的一些学习记录
- unity android 集成指南
- Eclipse导入android项目包xml报错未生成R文件
- android最火的开源项目
- [APP] Android 开发笔记 001-环境搭建与命令行创建项目
- 【IOS-COCOS2D-X 游戏开发之十六】配置你的COCOS2DX项目编译后的ANDROID自动使用(-HD)高清图&设置ANDROID自适应屏幕、缩放比例方法!
- 转__Android开源项目(三 完结篇)
- 如何在使用eclipse的情况下,清理android项目中的冗余class文件和资源文件以及冗余图片
- Android Studio项目生成Jar包
- Android--数据库数据显示至屏幕
- [APP] Android 开发笔记 002-命令行创建默认项目结构说明
- Android Studio更改项目SDK的版本
- Android程序性能优化——ANR、卡顿优化、内存优化、耗电优化、APK大小优化以及启动速度和实战项目
- Android 系统高度修改定制开机动画显示时间
- Android Studio怎么快速生成set方法和get方法
- 如何在Android Studio中添加多个项目
- Android kotlin 组件间通讯 - LiveEventBus 及测试(更新中)
- Android 11.0 12.0仿ios的hotseat效果修改hotseat样式
- Android Settings 中wifi详情页 隐私默认选中设备mac
- Android项目创建.prorperties配置文件和调用方法
- Android 项目经验汇总:Fiddler的坑,证书无效
- Android ContentProvider简单总结
- 【Android Gradle 插件】将自定义 Gradle 插件上传到自建 Maven 仓库 ① ( Maven 仓库上传源码上传源码设置 | 自定义源码打包任务 | 自定义文档打包任务 )
- 【Android 逆向】代码调试器开发 ( 使用 NDK 中的 ndk-build + Android.mk 编译 Android 平台的代码调试器可执行应用 )
- 【Android 逆向】IDA 安装 ( 使用 IDA 分析 so 动态库 )
- Android项目打包成APK文件
- 免费开源的android项目分享
- Android沉浸式状态栏兼容4.4手机的实现
- android 性能測试CTS篇
- Android_L(64bit) 模拟器配置及创建项目
- Android项目结构
- 【Android界面实现】使用Canvas对象实现“刮刮乐”效果
- Android Studio 创建/打开项目时一直处于Building“project name”Gradle project info 的解决
- 【Android进阶】12、单 Activity 多 Fragment 和 Fragment Navigation 导航
- 实验四 Android项目CriminalIntent应用开发二
- 【项目实战】Android APP的签名