當前位置:首頁 » 編程軟體 » rom反編譯

rom反編譯

發布時間: 2022-02-06 04:56:19

A. 如何製作刷機包可不可以從手機中導出rom進行修改,編譯為刷機包

你可以藉助第三方工具進行修改,像用蘑菇rom助手
什麼的,都比較簡單,你在網上找找視頻

B. 如何用手機修改ROM,需要什麼軟體(詳細)多謝,本人是新手。

建議你下載現成的android ROM。
android ROM的組成非常復雜,不是隨隨便便就能做成的。
既然你說是修改,那麼,直接用ES文件管理器即可,解壓ROM包,裡面主要由15部分組成

1)META-INF文件夾:內含升級腳本及ROM的簽名
2)System文件夾:包含對系統所有界面,軟體等的控制文件夾
3)Boot.img文件:android內核文件
4)App文件夾:放置系統軟體的目錄
5)Bin文件夾:放置android系統本地程序, 主要是Linux系統自帶的組件
6)Etc文件夾:放置android系統配置文件,如apn文件等
7)Fonts文件夾:放置字體文件,包含標准字體和粗體、斜體、中文、英文等
8)Framework文件夾:放置android系統平台框架文件及布局控制
9)Lib文件夾:放置系統底層庫及運行庫文件
10)Media文件夾:放置系統鈴聲音樂文件夾及開機動畫文件
11)Tts文件夾:放置手機的語音文件
12)Usr文件夾: 放置用戶文件,包含共享、鍵盤布局、時間區域文件等。
13)Vendor文件夾:放置ROM廠商定製內容
14)Xbin文件夾:放置用戶系統支持程序文件
15)Build.prop文件:系統屬性配置文件

裡面部分是在System 文件夾內,所以主要修改System文件夾即可。
修改System 文件夾操作,多數人只是修改apk包。
apk文件夾內裡面所有apk包都是系統應用(原本Root後才可以刪的應用),可以刪除小部分,同樣也可以反編譯這些包,以修改。
也可以修改代碼,需要java代碼編輯器。
封包時再壓縮即可。

實際上,android ROM包很復雜,不是三言兩語就能教出所有的步驟,不是隨隨便便就能修改地非常好的,建議上網多學習這些內容。

C. 我想修改別人修改過的安卓ROM裡面的framework-res.apk文件,反編譯後沒問題,可是回編譯不了,怎麼弄啊

twframework-res.apk 刷機包里 SYSTM下 framework 里 直接用WINRAR打開 或改後綴RAR 裡面 RES里 drawable帶---的四個文件夾 就是圖片文件夾 可以在UOT廚房修改

D. 學習製作rom需要什麼條件

需要了解ROM的幾個分區懂的架設JAVA環境了解框架文件是哪幾個了解每個系統APK文件的作用了解ROM里每個文件夾大概的作用使用APKTool反編譯和編譯APK,添加或修改自己喜歡的功能學會使用廚房及簽名軟體學會修改刷機腳本。。。。可以慢慢從修改現有ROM開始,一步一步學起。

E. 如何進行android 反編譯

一.看android的源代碼

1)將Apkd.apk 用zip解壓後,出現了一個classes.dex文件
2014/02/19 19:42
.
2014/02/19 19:42
..
2014/02/19 15:35 1,656 AndroidManifest.xml
2014/02/19 15:35 687,024 classes.dex
2014/02/19 15:49
META-INF
2014/02/19 15:49
res
2014/02/19 15:35 2,200 resources.arsc
2)進入到dex2jar目錄中,運行情況如下:
D:\developer\tools\test_apk\dex2jar-0.0.9.15>dex2jar.bat "..\Apkd(d2j)\classes.d
ex"
this cmd is deprecated, use the d2j-dex2jar if possible
dex2jar version: translator-0.0.9.15
dex2jar ..\Apkd(d2j)\classes.dex -> ..\Apkd(d2j)\classes_dex2jar.jar
Done.
在apk所在的目錄會出現 classes_dex2jar.jar 文件。
3) 用JD-GUI對jar包進行查看,可以查看源文件

二.反編譯apk

1.在下載APKTOOL中的三個文件(aapt.exe、apktool.bat、apktool.jar)解壓縮到你的Windows安裝目錄下,以方便使用Dos命令.
2012/12/06 11:44 854,016 aapt.exe
2014/02/19 17:15 277,372 Apkd.apk//示例用apk文件
2012/12/23 23:39 92 apktool.bat
2013/02/03 02:37 2,655,843 apktool.jar
2.進入到apktool.bat所在的目錄,運行:
apktool d Apkd.apk decode_dir
反編譯後,decode_dir目錄下的內容如下:
2014/02/19 17:16 716 AndroidManifest.xml
2014/02/19 17:16 237 apktool.yml
2014/02/19 17:18
build
2014/02/19 17:16
res
2014/02/19 17:16
smali
此時我可以查看原文件AndroidManifest.xml了,也是查看smali源文件(是用smali語言寫的,可以對照java看)。

三.APKTOOL的使用

1).decode
該命令用於進行反編譯apk文件,一般用法為
apktool d

代表了要反編譯的apk文件的路徑,最好寫絕對路徑,比如C:\MusicPlayer.apk
代表了反編譯後的文件的存儲位置,比如C:\MusicPlayer
如果你給定的已經存在,那麼輸入完該命令後會提示你,並且無法執行,需要你重新修改命令加入-f指令
apktool d –f

這樣就會強行覆蓋已經存在的文件
2).build
該命令用於編譯修改好的文件,一般用法為
apktool b

這里的
就是剛才你反編譯時輸入的
(如C:\MusicPlayer),輸入這行命令後,如果一切正常,你會發現C:\MusicPlayer內多了2個文件夾build和dist,其中分別存儲著編譯過程中逐個編譯的文件以及最終打包的apk文件。
3).install-framework
該命令用於為APKTool安裝特定的framework-res.apk文件,以方便進行反編譯一些與ROM相互依賴的APK文件。具體情況請看常見問題

四.smali與java源碼對照,並做出相應的修改

java源代碼:

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.*;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView a = (TextView)this.findViewById(R.id.test) ;
a.setText("raoliang");
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

}

對應的smali源代碼:
.class public Lali/text/apkd/MainActivity;
.super Landroid/app/Activity;
.source "MainActivity.java"

# direct methods
.method public constructor ()V
.locals 0

.prologue
.line 8
invoke-direct {p0}, Landroid/app/Activity;->()V

return-void
.end method

# virtual methods
.method protected onCreate(Landroid/os/Bundle;)V
.locals 2
.parameter "savedInstanceState"

.prologue
.line 12
invoke-super {p0, p1}, Landroid/app/Activity;->onCreate(Landroid/os/Bundle;)V

.line 13
const/high16 v1, 0x7f03

invoke-virtual {p0, v1}, Lali/text/apkd/MainActivity;->setContentView(I)V

.line 14
const/high16 v1, 0x7f08

invoke-virtual {p0, v1}, Lali/text/apkd/MainActivity;->findViewById(I)Landroid/view/View;

move-result-object v0

check-cast v0, Landroid/widget/TextView;

.line 15
.local v0, a:Landroid/widget/TextView;
const-string v1, "raoliang"

invoke-virtual {v0, v1}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V

.line 16
return-void
.end method

.method public onCreateOptionsMenu(Landroid/view/Menu;)Z
.locals 2
.parameter "menu"

.prologue
.line 21
invoke-virtual {p0}, Lali/text/apkd/MainActivity;->getMenuInflater()Landroid/view/MenuInflater;

move-result-object v0

const/high16 v1, 0x7f07

invoke-virtual {v0, v1, p1}, Landroid/view/MenuInflater;->inflate(ILandroid/view/Menu;)V

.line 22
const/4 v0, 0x1

return v0
.end method

F. 想學習4.4.2rom修改美化移植,包括反編譯apk,論壇上找到的教學都是安卓2.x的有沒有新一些

請問你了解了ROM包的結構沒

G. 安卓設置反編譯後要打開哪個文件修改代碼啊,把黑色背景改成全透明的,,注意是全透明的,哪位rom大神

直接找個透明框架唄 。

H. 我想知道,rom的美化和優化要不要反編譯就是說替換狀態欄圖標,字體這些的,又或者build優化

替換狀態欄圖標字體需要反編譯,替換系統字體不需要,build優化也不需要反編譯

I. 官方rom的apk怎麼解壓啊可以幫忙解壓兩個文件嗎

我想替換成這個版的聯系人,我現在用的這個聯系人有開心網插件。替換好像需要重新編譯。真的解壓不了,難道是加密了。幫幫忙吧。

熱點內容
解壓縮好卡 發布:2025-01-09 10:18:16 瀏覽:794
物資補給站我的世界伺服器 發布:2025-01-09 10:18:09 瀏覽:62
伺服器ip顯示泛播 發布:2025-01-09 10:10:34 瀏覽:711
緩存火影圖片 發布:2025-01-09 10:05:00 瀏覽:645
設置消費密碼驗證的渠道是什麼 發布:2025-01-09 09:59:21 瀏覽:871
小米9域名伺服器地址 發布:2025-01-09 09:59:14 瀏覽:607
各類資料庫 發布:2025-01-09 09:58:30 瀏覽:254
php判斷進制 發布:2025-01-09 09:54:44 瀏覽:282
何謂編程結構 發布:2025-01-09 09:54:09 瀏覽:381
python期末 發布:2025-01-09 09:54:01 瀏覽:709