`
yezhiqiu-love
  • 浏览: 169238 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Android反编译xml文件

阅读更多

一、前言:

大家好,今天给大家分享一下Android中的拿来主义,我们时常会碰到一个自己觉得很漂亮很帅气的应用(apk),所以我们会尝试用WinRAR等之类工具查看,而一般的应用程序打包后的目录通常是这样的如下图:

当然res里的图片是可以拿来就用的(笔者的好多应用的图片都是从别人的apk里扣出来的),而诸如layout里的布局及权限文件 (AndroidManifest.xml)已经是一堆乱码了,完全看不懂,想看看别人是怎么布局的都不容易。还有源代码都被编译成了 classes.dex,完全看不出什么线索。基于以上的困惑,笔者给大家分享一下Android中的拿来主义。

二、所需工具(点击各自连接进入下载页面):

1.AXMLPrinter2.jar

2.baksmali.jar

3.smali.jar

三、准备工作

为了方便起见,作者把AXMLPrinter2.jar,还有baksmali.jar,还有smali.jar(下下来为了方便重命名),放在Android SDK tools文件夹中如下图所示:

为了便于大家更容易程序比对,作者写了一个简单的应用(叫APKInstaller)目录结构如下图所示:

 

四、开始拿来主义

1.用AXMLPrinter2.jar查看apk中的布局xml文件:

将ApkInstaller应用生成的ApkInstaller.apk(为了方便起见放到tools目录里)用WinRAR等工具打开,将res/layout/main.xml解压出来(也还是放在tools目录里哦)

打开main.xml文件,内容如下(一堆天文):

 

这时候AXMLPrinter2.jar派上用场了,打开cmd终端,一直进入到tools目录下,输入如下命令:

java -jar AXMLPrinter2.jar main.xml > main.txt. (如下图所示)

 

打开main.txt代码如下(是不是有个123了呵呵~):

view plaincopy to clipboardprint?
<?xml version="1.0" encoding="utf-8"?>  
<LinearLayout  
    xmlns:android="http://schemas.android.com/apk/res/android
    android:orientation="1" 
    android:layout_width="-1" 
    android:layout_height="-1" 
    >  
    <WebView  
        android:id="@7F050000" 
        android:layout_width="-1" 
        android:layout_height="-2" 
        >  
    </WebView>  
</LinearLayout> 
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
 xmlns:android="http://schemas.android.com/apk/res/android "
 android:orientation="1"
 android:layout_width="-1"
 android:layout_height="-1"
 >
 <WebView
  android:id="@7F050000"
  android:layout_width="-1"
  android:layout_height="-2"
  >
 </WebView>
</LinearLayout>

为了比对打开源程序中的main.xml代码如下(大家比对一下吧):

view plaincopy to clipboardprint?
<?xml version="1.0" encoding="utf-8"?>  
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    >  
<WebView  
    android:id="@+id/apk_web" 
    android:layout_height="wrap_content" 
    android:layout_width="fill_parent" 
      
/>  
</LinearLayout> 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/Android_Tutor/archive/2010/07/06/5716970.aspx

分享到:
评论

相关推荐

    android反编译xml、layout

    `apktool`是一个开源的Android反编译工具,它能够帮助我们解包APK,反编译其中的XML和布局文件(layout),并提供重新打包和签名的功能,以实现对APK的分析和修改。 首先,`apktool`的基本使用流程如下: 1. **...

    反编译XML文件

    当我们谈论“反编译XML文件”,特别是二进制XML文件,这通常涉及到解析和解密那些以非传统方式存储或加密的XML数据。在这个场景下,我们关注的是如何从APK文件中提取并理解如`androidManifest.xml`这样的关键文件,...

    反编译AndroidManifest等xml文件

    首先,反编译XML文件在Android开发中并不常见,因为源代码通常是可见的。然而,在分析APK或者处理二进制XML文件时,反编译就显得尤为重要。AXMLPrinter是一个用于解析和打印Android二进制XML文件的工具,它可以将二...

    Android反编译工具包(最完整的Android反编译工具包)

    总结起来,这个最完整的Android反编译工具包是开发者和安全研究员的宝贵资源,包含了一系列用于解包、反编译和分析APK文件的工具。通过熟练掌握这些工具,可以深入了解Android应用程序的内部机制,提高开发技能,...

    android反编译工具

    这通常涉及到使用各种Android反编译工具。这些工具可以帮助开发者、安全研究人员或者逆向工程师理解已编译的Android应用程序的工作原理。下面我们将详细探讨一些常用的Android反编译工具及其应用。 1. **Apktool**...

    Android 反编译-全部工具包

    1. **Apktool**:Apktool是一款强大的Android反编译工具,它可以解压APK文件,解析资源文件,重新构建APK,并支持对Android资源进行反编译和编译。Apktool能够帮助开发者查看XML布局文件、图片资源以及字符串资源,...

    android反编译工具(dex2jar,apk2java)

    本文将详细介绍两款常用的Android反编译工具——dex2jar和apk2java,以及如何利用它们获取APK中的Java源代码和资源文件。 一、dex2jar dex2jar是一款将Dalvik字节码(.dex)转换为Java字节码(.jar)的工具。...

    apk反编译xml文件工具

    标题中的“apk反编译xml文件工具”是指用于解析Android应用程序(APK)中的XML文件的工具,这些工具通常被开发者、逆向工程师或者安全研究人员使用,以了解应用的内部结构、逻辑或提取资源。XML文件在APK中扮演着至...

    Android反编译工具

    首先,Android反编译工具.exe和Android反编译工具(64位).exe是两个可执行文件,可能是用于在Windows操作系统上运行的反编译软件。这些工具通常能够解析APK文件,将其Java字节码(Dalvik Executable, .dex)转换回源...

    Android反编译工具包

    这就是Android反编译工具包的作用。本文将深入探讨Android反编译的相关知识,包括为什么要反编译,常用的工具,以及如何使用这些工具。 一、为什么进行Android反编译 1. 安全分析:开发者或安全研究人员可以通过反...

    Android反编译.xml文件详解

    资源所需工具及操作步骤齐备,直接按文档操作即可:1、aapt.exe,2、apktool.bat,3、apktool.jar,4、framework-res.apk,5、Android反编译.xml文件详解及操作步骤。

    android反编译资源获取

    在Android应用开发中,"android反编译资源获取"是一个重要的技术话题,它涉及到对APK文件的逆向工程,以便获取其中的资源文件,如图片、布局文件等。APKTool是这个过程中常用的一款工具,它允许开发者解包、反编译、...

    Android反编译软件 安卓反编译 Android APK反编译详解

    本文将深入探讨Android反编译的相关知识,包括为什么要进行反编译,常用工具介绍,以及反编译过程的详细步骤。 首先,让我们理解什么是Android反编译。Android应用通常是以APK(Android Package)的形式发布,它...

    Android 反编译可视化操作工具

    这就是Android反编译的作用。本文将详细介绍一款名为"Android反编译可视化操作工具"的实用软件,它使得这个过程变得更加直观和便捷。 这款工具的核心优势在于它的可视化界面,开发者无需再通过复杂的命令行操作来...

    android一键反编译工具,xml反编译工具

    - XML反编译:Apktool等工具可将资源文件(如布局、字符串、颜色等XML文件)反编译为人类可读的形式。 - 重签名和安装:反编译后,若要重新打包并安装,需要使用签名工具(如 jarsigner)签名APK,确保其可被系统...

    android反编译工具包

    "android反编译工具包"正是为这种需求而设计的专业工具集,它可以帮助开发者将二进制的字节码还原成可读的源代码,以及查看和分析应用程序的资源文件,如布局、图片和字符串等。 1. **反编译原理**:Android应用...

    android 反编译工具

    本篇将详细介绍三个常用的Android反编译工具:Apktool、dex2jar以及JD-GUI。 1. **Apktool**: Apktool是一款强大的Android应用反编译工具,由Ivo Labs公司开发。它能够解码Android应用的资源文件,包括XML布局、...

    Android 反编译工具 APKDB

    本文将详细介绍“Android反编译工具APKDB”,以及如何利用它来提升我们的Android开发与调试能力。 APKDB全称为Android Package Database,是一款专为Android开发者设计的反编译工具。它能够帮助开发者快速对APK文件...

    Android反编译全套工具

    本资源"Android反编译全套工具"提供了一套常用的Android反编译工具,包括dex2jar、apktool和jd-gui,这些工具对于理解APK的工作原理、查找bug或者研究竞品功能非常有帮助。 1. **dex2jar**:这个工具主要用于将...

Global site tag (gtag.js) - Google Analytics