Android 的反编译 (附愤怒的小鸟源码下载)
16lz
2021-01-23
阅读源码是最好的学习方法,下面我们以愤怒的小鸟为例,看看如何把一个android游戏反编译成可读的源码。
工具介绍:
1、apktool 这个工具用来解压xml文件
到http://code.google.com/p/android-apktool/downloads/list下载前两个文件,并解压到Android SDK的platform tools 目录。
在命令行里的用法:
apktool d 你的apk.apk 解压到指定文件夹,例如:
apktool dF:\学习\android\反编译\愤怒的小鸟.apkF:\学习\android\反编译\愤怒的小鸟
<?xmlversion="1.0"encoding="utf-8"?><manifestandroid:versionCode="1620"android:versionName="1.6.2"android:installLocation="auto" package="com.rovio.angrybirds"
xmlns:android="http://schemas.android.com/apk/res/android">
<applicationandroid:label="@string/app_name"android:icon="@drawable/icon"android:debuggable="false">
<activityandroid:theme="@android:style/Theme.NoTitleBar.Fullscreen"android:label="@string/app_name"android:name="com.rovio.ka3d.App"android:launchMode="singleTask"android:screenOrientation="landscape"android:configChanges="keyboardHidden|orientation">
<intent-filter>
<actionandroid:name="android.intent.action.MAIN"/>
<categoryandroid:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activityandroid:theme="@android:style/Theme.NoTitleBar.Fullscreen"android:name="com.burstly.lib.component.networkcomponent.burstly.VideoPlayerActivity"android:configChanges="keyboard|keyboardHidden|orientation"/>
<activityandroid:theme="@android:style/Theme.NoTitleBar.Fullscreen"android:name="com.burstly.lib.component.networkcomponent.burstly.BurstlyFullscreenActivity"android:configChanges="keyboard|keyboardHidden|orientation"/>
<activityandroid:name="com.google.ads.AdActivity"android:configChanges="keyboard|keyboardHidden|orientation"/>
<providerandroid:name="com.greystripe.android.sdk.AdContentProvider"android:exported="false"android:multiprocess="true"android:authorities="com.rovio.ka3d.AdContentProvider"/>
<activityandroid:name="com.greystripe.android.sdk.AdView"android:configChanges="keyboard|keyboardHidden|orientation">
<intent-filter>
<categoryandroid:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activityandroid:name="com.millennialmedia.android.MMAdViewOverlayActivity"/>
<activityandroid:theme="@android:style/Theme.NoTitleBar.Fullscreen"android:name="com.millennialmedia.android.VideoPlayer"android:configChanges="keyboard|keyboardHidden|orientation"/>
<supports-screensandroid:anyDensity="true"android:smallScreens="true"android:normalScreens="true"android:largeScreens="true"/>
<activityandroid:theme="@android:style/Theme.NoTitleBar.Fullscreen"android:name="com.burstly.lib.component.networkcomponent.jumptap.JumptapActivity"android:configChanges="keyboard|keyboardHidden|orientation"/>
</application>
<uses-permissionandroid:name="android.permission.INTERNET"/>
<uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>
<uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permissionandroid:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-sdkandroid:minSdkVersion="4"android:targetSdkVersion="8"/>
</manifest>
这就是我们加压后的AndroidManifest文件,我们看到愤怒的小鸟总共有8个activity
2、dex2jar 这个工具是将dex文件反编译成jar文件
到http://code.google.com/p/dex2jar/downloads/list下载这个工具,并将所有文件和文件夹加压到并Android SDK的platform tools 目录。
用法:
dex2jarF:\学习\android\反编译\classes.dex 这里是把dex文件反编译成jar文件,默认会在该目录生成一个classes_dex2jar.jar文件。
3、xjad 这个工具是将jar文件反编译成java文件
这是一个可视化的将jar文件反编译成java文件的工具,直接反编译jar会自动生成一个包含java文件的文件夹。
愤怒的小鸟源码下载:
http://dl.dbank.com/c0olagap0k
更多相关文章
- Android 通过命令将文件导出
- Android开发8――利用pull解析器读写XML文件
- Android自动测试之monkeyrunner工具
- Android 生成android的keystore文件
- Android 使用webview 打开浏览ppt文件
- 有关android中加载MP4,3gp等视频文件,无法播放问题的解决
- Android SQLite相关框架工具
- Android的文件监控系统不可靠
- Android Studio 使用API29无法向手机存储写文件问题