導航:首頁 > 源碼編譯 > 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相關的資料

熱點內容
linux遠程桌面連接命令 瀏覽:857
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
windows命令行copy 瀏覽:65
都勻工會卡綁定什麼購物App 瀏覽:274
c基本命令 瀏覽:319