一、项目和一般原则其不足之处包

(1)开发一个简单的项目。当发布了APK档。假设我们不使用签名的方式,直接地bin文件夹中找到*.apk档。非常方便,但是,当我们在使用的用户,可能有其他方案覆盖安装。例的详细说明,下面的:

(2)我们新建一个项目Test文件夹结构例如以下,并把它公布到模拟器上。得到我们的打包文件Test.apk

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGxnZW4xNTczODc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

(3)然后我们在看模拟器中的文件文件夹信息。我们在安装的应用,都会在安卓机器上的data----data---详细的安装文件夹,比如我的是:com.example.test

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGxnZW4xNTczODc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGxnZW4xNTczODc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

这里的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文件文件夹下:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGxnZW4xNTczODc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

(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项目包装apk和apk反编译,xml反编译的更多相关文章

  1. [转]Android应用安装包apk文件的反编译与重编译、重签名

    背景介绍: 最近在做Robotium自动化测试,使用到solo.takeScreenshot()函数以在测试过程中截图,但此函数需要被测试APP具有<uses-permission androi ...

  2. 【Android 应用开发】 Android APK 反编译 混淆 反编译后重编译

    反编译工具 : 总结了一下 linux, windows, mac 上的版本, 一起放到 CSDN 上下载; -- CSDN 下载地址 : http://download.csdn.net/detai ...

  3. Android Studio 动态调试 apk 反编译出的 smali 代码

    在信安大赛的准备过程中,主要通过 Android Studio 动态调试 apk 反编译出来的 smali 代码的方式来对我们分析的执行流程进行验证.该技巧的主要流程在此记录.以下过程使用 Andro ...

  4. android逆向基础:apk 反编译 重打包 重签名

    apk 反编译大家都比较熟悉,这里只做一个笔记. 1 反编译 apk apktool d perfect.apk 这样就把资源文件解压缩了, classes.dex 也反编译成了 smali 文件 2 ...

  5. [Android逆向]APK反编译与回编译

    一.先查壳,再反编译看验证首先打开.apk文件==>反编译apk(dex/配置文件/资源文件(apk反编译失败)>修改关键文件实现自己的目的>重新打包签名(无法重新打包)==> ...

  6. Android apk逆向:反编译,回编译,签名,打包。

    Android apk逆向:反编译,回编译,签名,打包流程. 第一步: apk 反编译. 1) 打开命令行窗口,输入java -version, 检测当前java版本,若版本较低, 则下载JAVA S ...

  7. Android反编译(二)之反编译XML资源文件

    Android反编译(二) 之反编译XML资源文件 [目录] 1.工具 2.反编译步骤 3.重新编译APK 4.实例 5.装X技巧 6.学习总结 1.工具 1).反编译工具  apktool http ...

  8. APK反编译、重编译、签名、查看源码

    1.反编译与重编译 工具:apktool 下载地址:https://ibotpeaches.github.io/Apktool/ 环境:Java (JRE 1.7) 安装步骤:参考官网(也可以不安装, ...

  9. 安卓apk的编译与反编译

    原文:https://blog.csdn.net/baidu_33870664/article/details/80186945 android基于java的,而java反编译工具很强悍,所以对正常a ...

随机推荐

  1. 用gradle管理android项目出现的问题以及解决方法

    1.项目结构 最好是全部在root 项目配置 一个settings.gradle 一个build.gradle 2.多项目依赖 http://www.gradle.org/docs/current/u ...

  2. 基于三星I9250演示自己弄的Miracast功能-手机对手机

    最终把Miracast功能測试通了,为了节省时间.我的Source端和Sink端都採用同一个机型.这样能够降低我为目标机编译4.4.2源码所耗费的时间.今天简单录制了一段视频.视频是用手机录制的,室内 ...

  3. 如何高效地向Redis插入大量的数据(转)

    最近有个哥们在群里问,有一个日志,里面存的是IP地址(一行一个),如何将这些IP快速导入到Redis中. 我刚开始的建议是Shell+redis客户端. 今天,查看Redis官档,发现文档的首页部分( ...

  4. vim php代码规范

    vim 代码规范工具php-cs-fixer.phar (參考https://github.com/FriendsOfPHP/PHP-CS-Fixer) INSTALL curl http://get ...

  5. Android中倒计时代码

    布局: maina.xml <DigitalClock android:id="@+id/myClock" android:layout_width="wrap_c ...

  6. c4Droid

    c4可以让用c/c++写的源码打包成apk安装包,支持Console.SDL.Qt. NativeActivity 等一系列扩展库,可以用来写软件,也可以用来写游戏,是手机端练习c/c++的神器.c4 ...

  7. hdu3664(递推dp)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3664 分析:dp[i][j]表示i个数的排列中E值为j的个数.假设现在已有一个E值为j的i的排列,对于 ...

  8. 金融界高富帥現身快男北京唱區 陳樂:我拿生活養夢想__娛樂新聞_Yes娛樂

    http://m.baidu.com/tc?pn=15&bd_page_type=1&pu=sz%401320%5F1001%2Cta%40iphone%5F2%5F4%2E1%5F3 ...

  9. Hdu 4734 【数位DP】.cpp

    题意: 我们定义十进制数x的权值为f(x) = a(n)*2^(n-1)+a(n-1)*2(n-2)+...a(2)*2+a(1)*1,a(i)表示十进制数x中第i位的数字. 题目给出a,b,求出0~ ...

  10. 调用WCF的异步方法

    原文:调用WCF的异步方法 AsyncCallback aLoginCallback = delegate(IAsyncResult result) { var aSystemUser = WcfCl ...