导航:首页 > 源码编译 > dex编译line2

dex编译line2

发布时间:2025-01-18 23:01:18

1. 如何修改安卓手机的通知栏时间、日期和通知颜色

安卓手机通知栏个性化教程

对于追求个性化界面的android手机用户,修改通知栏时间、日期和通知颜色可以为手机增添新鲜感。以下是详细的步骤:


一、修改时间颜色


1. 首先,确保电脑安装了JDK,然后下载并解压smali.rar工具包。从severce.jar中提取classes.dex文件,并使用baksmali.jar进行反编译
2. 打开classes/com/android/server/status/statusbaricon.smali,找到const V6, -0X100,将其修改为const v6, -0x1,以将时间颜色从黑色改为白色。
3. 修改完成后,重新打包classes.dex,将其替换回severce.jar,并确保services.jar文件在/system下的权限设置为rw-r--r--。
4. 重启手机,即可看到时间颜色的变化。

二、修改日期颜色


1. 前四步与时间颜色修改相同,随后在StatusBarService.smali中找到.line276,添加代码以修改日期颜色。
2. 重启手机,日期颜色也会随之改变。

三、修改通知字体颜色


1. 从framework-res.apk中的三个文件status_bar_latest_event_content.xml、status_bar_expanded.xml和status_bar.xml控制通知字体颜色。
2. 使用16进制编辑器修改颜色代码,如将黑色(00 00 00 FF)改为白色(FF FF FF FF)。
3. 重新打包framework-res.apk,更新到/system/framework/,确保权限设置。

这些更改需要一定的技术操作,但完成后,您的安卓手机通知栏将焕然一新。如需进一步探索,可以参考Android系统隐藏命令大全。

2. 怎样把smali文件转换为java文件

可以先把smali转化为dex文件,然后再用 dex2jar转化一次。我之前也遇到过跟你一样的情况就是这么处理的。祝你好运!

3. 怎样把反编译的apk文件在eclipse中打开

那要看你反编译的程度了。apk反编译有两部分,一部分是res等xml资源文件。用android 的apktool就可以了。这些xml文件都可以在eclipse中直接打开。
dex文件(源代码)需要使用dex2jar工具转化成jar文件。jar文件可以在eclipse查看其结构。对.class文件,eclipse可以查看方法,内部类等信息。
如果对Jar也进行了反编译,那么得到的就是Java文件。在eclipse中,可以像你new 的class一样查看。

4. 如何进行ODEX反编译实例

0x00 前言

使用开源工具出现问题而且很难在网上查找到解决方案的时候,最好的解决方法就是研究它的源码,因为那样能为我们提供更多的信息。

0x01 搭建smali/baksmali源码调试环境

首先我们在github上拉取smali/baksmali的源码

git clone https://github.com/JesusFreke/smali.git

可以看出该项目采用了grade自动化构建工具来编译源码的,因此我们可以在android studio中导入该项目,如下图所示:

生成的baksmali在如下目录下面:

上图中的Program arguments中,-a选项代表api level,可以通过如下属性获得:

报错如下:

Error occurred while disassembling classLandroid.support.v4.util.TimeUtils; - skipping class

java.lang.RuntimeException: Invalid methodindex: 32

atorg.jf.dexlib2.analysis.InlineMethodResolver$InlineMethodResolver_version36.resolveExecuteInline(InlineMethodResolver.java:175)

atorg.jf.dexlib2.analysis.MethodAnalyzer.analyzeExecuteInline(MethodAnalyzer.java:1512)

atorg.jf.dexlib2.analysis.MethodAnalyzer.analyzeInstruction(MethodAnalyzer.java:982)

atorg.jf.dexlib2.analysis.MethodAnalyzer.analyze(MethodAnalyzer.java:205)

atorg.jf.dexlib2.analysis.MethodAnalyzer.<init>(MethodAnalyzer.java:140)

atorg.jf.baksmali.Adaptors.MethodDefinition.(MethodDefinition.java:463)

atorg.jf.baksmali.Adaptors.MethodDefinition.getMethodItems(MethodDefinition.java:371)

atorg.jf.baksmali.Adaptors.MethodDefinition.writeTo(MethodDefinition.java:238)

atorg.jf.baksmali.Adaptors.ClassDefinition.writeDirectMethods(ClassDefinition.java:282)

atorg.jf.baksmali.Adaptors.ClassDefinition.writeTo(ClassDefinition.java:112)

atorg.jf.baksmali.baksmali.disassembleClass(baksmali.java:225)

atorg.jf.baksmali.baksmali.access$000(baksmali.java:55)

atorg.jf.baksmali.baksmali$1.call(baksmali.java:149)

atorg.jf.baksmali.baksmali$1.call(baksmali.java:147)

atjava.util.concurrent.FutureTask.run(FutureTask.java:266)

atjava.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

atjava.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

atjava.lang.Thread.run(Thread.java:745)

我们直接锁定出错的地方,在上面出错信息标红色的地方,并且在抛出异常处下断点,我们可以判断出错原因是因为反编译smali指令execute-line时传入了一个未知的Dalvik虚拟机的内部java方法索引inlineIndex=32:

然后,我们把inline.txt作为-T选项的参数传递进去:

阅读全文

与dex编译line2相关的资料

热点内容
徐州税务服务器地址 浏览:165
为什么安卓手机比苹果手机贬值快 浏览:243
源码微信小程序搭建 浏览:278
linux远程桌面连接命令 浏览:859
adams教程pdf 浏览:264
Arm和单片机区别 浏览:559
阿里云服务器绑定主机头 浏览:949
游戏手机什么最好用安卓 浏览:11
江苏程序员怎么样 浏览:510
捉妖股选股公式源码 浏览:541
胜利油田的社保用什么app 浏览:460
lru算法java 浏览:129
数据分析系统源码 浏览:539
论语繁体pdf 浏览:517
直上指标源码 浏览:193
pythongeohash使用 浏览:348
二维热力图python 浏览:553
如何度过程序员菜鸟阶段 浏览:505
python子图标题显示不出来 浏览:538
linux怎么看连接服务器的ip 浏览:709