- 浏览: 340811 次
- 性别:
- 来自: 安徽
文章分类
最新评论
-
secally:
楼主可以上传个例子吗,谢谢,我咋跑不起来,,eclipse不是 ...
Android自动打包、签名、优化、上传ANT脚本 -
secally:
请问下执行命令是啥,ant release 还是?麻烦指教谢谢 ...
Android自动打包、签名、优化、上传ANT脚本 -
trp1022:
好牛啊
程序员不能不通文史 -
sunny78117:
谢谢,写得好
Android bitmap优化 -
futurebp:
这是什么类型的脚本啊?
Android自动打包、签名、优化、上传ANT脚本
一个private 方法
private String createBadgeCode()
.method private createBadgeCode()Ljava/lang/String;
// Date now = New Date();
new-instance v2,java/util/Date
invoke-direct {v2},java/util/Date/ ; ()V// SimpleDateFormat dateFormat = new SimpleDateFormat(”yyMMddhhmm”);
new-instance v5,java/text/SimpleDateFormat
const-string v7,”yyMMddhhmm”
invoke-direct {v5,v7},java/text/SimpleDateFormat/ ; (Ljava/lang/String;)V// StringBuilder raw = new StringBuilder();
new-instance v7,java/lang/StringBuilder
invoke-direct {v7},java/lang/StringBuilder/ ; ()V// raw.append(dateFormat.format(now));
invoke-virtual {v5,v2},java/text/SimpleDateFormat/format ; format(Ljava/util/Date;)Ljava/lang/String;
move-result-object v8
invoke-virtual {v7,v8},java/lang/StringBuilder/append ; append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v7// raw.append(difficulty);
iget v8,v12,tx/games/atd_world.difficulty I
invoke-virtual {v7,v8},java/lang/StringBuilder/append ; append(I)Ljava/lang/StringBuilder;
move-result-object v7// raw.append(”tensaix2j”);
const-string v8,”tensaix2j”
invoke-virtual {v7,v8},java/lang/StringBuilder/append ; append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v7// Bytes[] rawbytes = raw.toString.getBytes;
invoke-virtual {v7},java/lang/StringBuilder/toString ; toString()Ljava/lang/String;
move-result-object v4
invoke-virtual {v4},java/lang/String/getBytes ; getBytes()[B
move-result-object v0/* Below code refined;
int sum = 0;for(int i = 0; i < rawbytes.length(); i++)
sum += rawbytes[i];
*/
const/4 v6,0
const/4 v3,0
l3c1e:
// length = rawbytes.length();
array-length v7// if( v3 > v7 ) goto: l3c30
if-ge v3,v7,l3c30// v7 = rawbytes(v0);
aget-byte v7,v0,v3// v6 += v7;
add-int/2addr v6,v7// v3 ++;
add-int/lit8 v3,v3,1
goto l3c1el3c30:
// StringBuilder badge = new StringBuilder();
new-instance v7,java/lang/StringBuilder
invoke-direct {v7},java/lang/StringBuilder/ ; ()V// v8 = Math.random();
invoke-static {},java/lang/Math/random ; random()D
nop
move-result-wide v8// v10 = 4652007308841189376;
const-wide v10,4652007308841189376 ; 0×408f400000000000// v8 = Math.round(v8*v10);
mul-double/2addr v8,v10// I thought it only took one variable??
invoke-static {v8,v9},java/lang/Math/round ; round(D)J
move-result-wide v8// v10 = 1000
const-wide/16 v10,1000// v8 += v10;
add-long/2addr v8,v10// badge.append(v8);
invoke-virtual {v7,v8,v9},java/lang/StringBuilder/append ; append(J)Ljava/lang/StringBuilder;
move-result-object v7// badge.append(dateFormat.format(now));
invoke-virtual {v5,v2},java/text/SimpleDateFormat/format ; format(Ljava/util/Date;)Ljava/lang/String;
move-result-object v8
invoke-virtual {v7,v8},java/lang/StringBuilder/append ; append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v7// badge.append(difficulty);
iget v8,v12,tx/games/atd_world.difficulty I
invoke-virtual {v7,v8},java/lang/StringBuilder/append ; append(I)Ljava/lang/StringBuilder;
move-result-object v7// badge.append(sum);
invoke-virtual {v7,v6},java/lang/StringBuilder/append ; append(I)Ljava/lang/StringBuilder;
move-result-object v7// return badge.toString();
invoke-virtual {v7},java/lang/StringBuilder/toString ; toString()Ljava/lang/String;
move-result-object v1
return-object v1
.end method
An example of the output of this function is; 1310090403121501473
Broken down the output looks like this;
1310090403121501473, (round(random * const)+1000
1310090403121501473, Date in yyMMddhhmm format.
1310090403121501473, “0″ Difficulty, Noob = 0, Normal = 1, Pro = 3
1310090403121501473, sum of bytes (date + difficulty + “tensaix2″)
发表评论
-
抓取Android WebView截屏
2011-08-19 21:33 7662一般使用setDrawingCacheEnabled(true ... -
Android bitmap优化
2011-08-11 17:02 5985直接使用ImageView显示 ... -
Android模拟器更改分辨率后 无法取得分辨率问题
2011-05-11 21:06 2858在PC上更改模拟器分辨率为480*800 (如果你的PC界面 ... -
获取屏幕硬件分辨率方法 收藏
2011-05-11 16:28 1916TextView tv=(TextVie ... -
Bytecode for the Dalvik VM
2011-05-10 22:35 1366http://www.netmite.com/android/ ... -
反编译并且修改Android APK包
2011-05-10 16:57 3131為了某個實驗的動機,我們評估反編譯 Android ... -
Android Ant编译时候进行混淆
2010-10-18 13:49 3831版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
自定义Ant Task
2010-09-13 17:58 2997版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
Android自动打包、签名、优化、上传ANT脚本
2010-07-26 16:51 13988版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
Android自定义含有CheckBox的Adapter遇到的问题
2010-06-23 13:48 4125版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
QR code类库
2010-06-03 23:11 2332Google code发现的好东西。 QR code 类库 ... -
Android QQ,一个WEBOS APP诞生!!(两个QQ对比!)
2010-04-10 12:05 1879请看这个大哥的言论 http://linuxtoy.or ... -
Android 、BlackBerry 文本对齐方式对比
2010-02-22 13:11 1811版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
教你如何开关Android的APN网络
2010-01-08 11:36 6052版权所有,转载请注明来自Mobile Developer (h ... -
史上最强NDK入门项目实战
2009-10-10 13:29 2689以下内容Sinfrancis版权所有,专注请注明来自 htt ... -
使用TimerTask控制ProgressBar
2009-10-10 13:21 1115以下内容Sinfrancis版权所有,专注请注明来自 htt ... -
自定义List布局
2009-10-10 13:19 1920以下内容Sinfrancis版权所有,专注请注明来自 htt ... -
重画Progressbar的进度
2009-10-10 13:15 1942以下内容Sinfrancis版权所有,专注请注明来自 htt ... -
谈谈Android中文短信的实现
2009-10-10 13:13 2182似 乎Google在推出G1时 ... -
模拟器互发短信
2009-10-10 13:11 1293以下内容Sinfrancis版权所有,专注请注明来自 htt ...
相关推荐
Apktool不仅支持.dex反编译,还能处理资源文件,如XML布局、图片等。通过Apktool,开发者可以查看APK的资源结构,修改语言字符串,甚至重构应用的布局。使用Apktool需要一定的命令行操作经验,但它的文档丰富,社区...
总结来说,"apk反编译"和"dex反编译"是Android逆向工程的重要组成部分,它们有助于开发者理解和修改APK,同时也为安全研究人员提供了分析潜在恶意行为的手段。在进行这些操作时,应遵循合法性和道德性原则,确保使用...
本文将详细介绍两款常用的Android反编译工具——dex2jar和apk2java,以及如何利用它们获取APK中的Java源代码和资源文件。 一、dex2jar dex2jar是一款将Dalvik字节码(.dex)转换为Java字节码(.jar)的工具。...
在Android世界里,反编译`classes.dex`文件通常用于分析APK的源代码结构、功能实现或者对APK进行定制和修改。 在这个压缩包中,我们有以下四个关键文件: 1. **反编译.bat**:这是一个批处理文件,它可能包含执行...
根据提供的文件信息,本文将对“破解器dex反编译文件”的相关知识点进行详细解析。 ### 一、DEX文件简介 #### 1.1 DEX文件格式 DEX(Dalvik Executable)是一种专为Android平台设计的字节码格式。与Java的class...
`dex2jar`正是为了桥接这两种格式,使得开发者可以利用Java反编译工具(如JD-GUI或ProGuard)查看和分析Android应用的原始Java源代码,尽管这个过程可能会丢失一些原始的源代码结构和注释。 `dex2jar`的工作流程...
【dex反编译工具jadx】是一款高效且易用的Android Dex文件反编译工具,专为开发者设计,便于分析和理解APK或Dex文件的内部结构和代码逻辑。JADX以其强大的功能和直观的界面,使得Android应用的逆向工程变得更为简单...
标题中的“Android反编译工具包(最完整的Android反编译工具包)”表明这是一个集合了多种工具的资源包,用于帮助开发者和安全研究人员进行APK的反编译工作。 首先,让我们来了解一下反编译的基本概念。反编译是将已...
除了dex2jar,还有其他工具可以用于APK的反编译,如Apktool用于解析资源文件,Smali用于查看和修改DEX文件的汇编代码,以及 Frida 和 Xposed 用于动态分析和注入代码。 总之,APK反编译是Android逆向工程的一部分,...
- **代码混淆**:使用ProGuard或R8工具对代码进行混淆,这会重命名类和方法,使反编译后的代码变得难以理解。 - **资源加密**:对敏感的资源文件进行加密,只在运行时解密,减少数据暴露的风险。 - **使用Native ...
- **JD-GUI**:一个图形化工具,可以直接打开`.jar`文件查看反编译后的Java源代码。 - **Apktool**:除了`dex2jar`外,另一个常用的Android反编译工具,它可以解包APK,还原资源文件和XML布局,但不处理.dex文件。 -...
在Android应用开发的世界里,有时候我们可能需要对已有的APK文件进行反编译,以了解其内部工作原理、查看源代码或者进行二次开发。在这个过程中,一些专业的工具显得尤为重要。这里提到的三个文件——dex2jar-2.0....
在Android应用开发的世界里,有时候我们可能需要对APK文件进行反编译,以了解其工作原理、查看源代码或进行安全分析。标题为“Android反编译工具”的压缩包包含了一系列用于Android应用反编译的实用工具。下面将详细...
配合dex2jar使用,可以快速浏览和理解反编译后的Java源代码。 4. **Smali/baksmali**:Smali是一种低级别的Dalvik虚拟机汇编语言,而baksmali是它的反汇编器。通过将DEX文件转换为Smali代码,我们可以更深入地了解...
总的来说,APK和Dex文件的反编译与回编译是Android开发中的高级技能,涉及到Android应用的结构、字节码解析、资源处理等多个方面。理解这一过程对于学习Android系统的工作原理、提升应用安全性或者进行二次开发都有...
在Android开发领域,有时我们需要对APK文件进行反编译以了解其内部结构、源代码逻辑或进行二次开发。本文将深入探讨Android反编译的相关知识,包括为什么要进行反编译,常用工具介绍,以及反编译过程的详细步骤。 ...
此外,由于反编译可能会导致代码混淆,有些部分可能难以理解,这需要开发者具备一定的逆向工程知识和经验。 在进行反编译时,开发者应保持尊重他人的知识产权,遵循软件许可协议,并且理解这可能触及到的道德和法律...
在Android开发领域,有时我们需要对APK文件进行反编译以了解其内部结构、源代码或进行二次开发。"Android一键反编译"是这样的一个工具,它简化了原本复杂的过程,让开发者和逆向工程师可以更高效地探索APK的内部工作...