當前位置:首頁 » 編程軟體 » 手機app重編譯

手機app重編譯

發布時間: 2024-05-02 11:01:40

❶ android studio 如何回編譯一個APP

android studio中不能編譯反編譯出來的文件,android studio只能編譯源代碼。

1.反編譯Apk得到java源代碼
首先要下載兩個工具:dex2jar和JD-GUI
前者是將apk中的classes.dex轉化成Jar文件,而JD-GUI是一個反編譯工具,可以直接查看Jar包的源代碼。

具體步驟:
首先將apk文件,將後綴改為zip,解壓,得到其中的classes.dex,它就是java文件編譯再通過dx工具打包而成的;
解壓下載的dex2jar,將classes.dex復制到dex2jar.bat所在目錄。在命令行下定位到dex2jar.bat所在目錄
運行 dex2jar.bat classes.dex
生成 classes.dex.dex2jar.jar

2.反編譯apk生成程序的源代碼和圖片、XML配置、語言資源等文件
還是下載工具,這次用到的是apktool

具體步驟:
將下載的兩個包解壓到同一個文件夾下,應該會有三個文件:aapt.exe,apktool.bat,apktool.jar
1.解壓縮下載的兩個文件包,apktool-install-windows-r04-brut1.tar解壓縮後得到的包里有aapt.exe 和apktool.bat.(注意要把apktool1.4.1.tar解壓後的一個.jar 文件到解壓後的\apktool-install-windows-r04-brut1文件夾里)
2.特別注意:你要反編譯的文件一定要放在C盤的根目錄里

❷ 安卓app應用製作好了 如何更改啊

一、製作好的 .apk 文件如果有源碼,可以在源碼中進行修改,修改完成後重新生成即可。

二、使用類似RE管理器之類的工具,但是如果存在以後兩種情況是改不了的。

1、APP非自身開發創建。

2、簽名已經生成,無修改簽名的許可權。

❸ app精簡功能

安卓:
你可以反編譯安裝包 apk文件(部分app安裝包加了防反編譯可能不行),反編譯後修改APP的代碼,重新編譯並簽名APP就可以正常安裝
蘋果:
如果安裝包ipa文件,已上架至應用商店的話,安裝包會受到加密保護,無法反編譯不過可以解密,解密後修改能否安裝不能保證,具體可網路查閱,未上架的app的話,一樣可以反編譯,修改app代碼需要在macOS的xcode中修改,修改後,重新編譯並簽名,就可以安裝

總結:可以的,不過安卓和蘋果都會有安裝包加密保護,蘋果的app只要上架就會加密,安的一般不會加密,蘋果的解密後可能會無法安裝,沒有加密的蘋果安裝包,在安裝後會遇到閃退等問題,甚至無法安裝
(本人小白,部分內容還需向專業人士詢問)

❹ 如何修改Android應用程序的圖標和名字

利用反編譯工具「安卓修改大師」可以修改Android應用程序的圖標和名字。具體操作請參照以下步驟。

1、在應用下載網站下載「安卓修改大師」軟體,下載完成後,安裝到電腦系統中。

❺ 濡備綍鍙嶇紪璇慳ndroid搴旂敤騫墮噸鏂版墦鍖

涓.鐪媋ndroid鐨勬簮浠g爜

銆銆1)灝咥pkd.apk 鐢▃ip瑙e帇鍚庯紝鍑虹幇浜嗕竴涓猚lasses.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)榪涘叆鍒癲ex2jar鐩褰曚腑錛岃繍琛屾儏鍐靛備笅錛
銆銆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.
銆銆鍦╝pk鎵鍦ㄧ殑鐩褰曚細鍑虹幇 classes_dex2jar.jar 鏂囦歡銆
銆銆3) 鐢↗D-GUI瀵筳ar鍖呰繘琛屾煡鐪嬶紝鍙浠ユ煡鐪嬫簮鏂囦歡

銆銆浜.鍙嶇紪璇慳pk

銆銆1.鍦ㄣ涓嬭澆銆APKTOOL涓鐨勪笁涓鏂囦歡錛坅apt.exe銆乤pktool.bat銆乤pktool.jar錛夎В鍘嬬緝鍒頒綘鐨刉indows瀹夎呯洰褰曚笅錛屼互鏂逛究浣跨敤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.榪涘叆鍒癮pktool.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婧愭枃浠訛紙鏄鐢╯mali璇璦鍐欑殑錛屽彲浠ュ圭収java鐪嬶級銆

銆銆涓.APKTOOL鐨勪嬌鐢

銆銆1).decode
銆銆璇ュ懡浠ょ敤浜庤繘琛屽弽緙栬瘧apk鏂囦歡錛屼竴鑸鐢ㄦ硶涓
銆銆apktool d

銆銆浠h〃浜嗚佸弽緙栬瘧鐨刟pk鏂囦歡鐨勮礬寰勶紝鏈濂藉啓緇濆硅礬寰勶紝姣斿侰:\MusicPlayer.apk
銆銆浠h〃浜嗗弽緙栬瘧鍚庣殑鏂囦歡鐨勫瓨鍌ㄤ綅緗錛屾瘮濡侰:\MusicPlayer
銆銆濡傛灉浣犵粰瀹氱殑宸茬粡瀛樺湪錛岄偅涔堣緭鍏ュ畬璇ュ懡浠ゅ悗浼氭彁紺轟綘錛屽苟涓旀棤娉曟墽琛岋紝闇瑕佷綘閲嶆柊淇鏀瑰懡浠ゅ姞鍏-f鎸囦護
銆銆apktool d 鈥揻

銆銆榪欐牱灝變細寮鴻岃嗙洊宸茬粡瀛樺湪鐨勬枃浠
銆銆2).build
銆銆璇ュ懡浠ょ敤浜庣紪璇戜慨鏀瑰ソ鐨勬枃浠訛紝涓鑸鐢ㄦ硶涓
銆銆apktool b

銆銆榪欓噷鐨
銆銆灝辨槸鍒氭墠浣犲弽緙栬瘧鏃惰緭鍏ョ殑
銆銆錛堝侰:\MusicPlayer錛,杈撳叆榪欒屽懡浠ゅ悗錛屽傛灉涓鍒囨e父錛屼綘浼氬彂鐜癈:\MusicPlayer鍐呭氫簡2涓鏂囦歡澶筨uild鍜宒ist錛屽叾涓鍒嗗埆瀛樺偍鐫緙栬瘧榪囩▼涓閫愪釜緙栬瘧鐨勬枃浠朵互鍙婃渶緇堟墦鍖呯殑apk鏂囦歡銆
銆銆3).install-framework
銆銆璇ュ懡浠ょ敤浜庝負APKTool瀹夎呯壒瀹氱殑framework-res.apk鏂囦歡錛屼互鏂逛究榪涜屽弽緙栬瘧涓浜涗笌ROM鐩鎬簰渚濊禆鐨凙PK鏂囦歡銆傚叿浣撴儏鍐佃風湅甯歌侀棶棰

銆銆鍥.smali涓巎ava婧愮爜瀵圭収錛屽苟鍋氬嚭鐩稿簲鐨勪慨鏀

銆銆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;
銆銆}

銆銆}

銆銆瀵瑰簲鐨剆mali婧愪唬鐮侊細
銆銆.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

銆銆閫氳繃瀵規瘮鍙浠ョ湅鍒幫紝甯擱噺鏄娌℃湁蹇呭彉鐨勶紝鍙浠ユ牴鎹鐨剆mali鐨勮娉曪紝榪涜岀浉搴旂殑淇鏀

銆銆浜.3銆佹墦鍖呫佺懼悕鍜屽畨瑁呬慨鏀瑰悗鐨刟pk

銆銆淇鏀瑰畬浜嗭紝灝卞彲浠ユ墦鍖呭洖apk浜嗐傛墽琛屼互涓嬪懡浠わ細
銆銆apktool b decode_dir
銆銆鍦╩ygame鐩褰曚笅鐨刣ist鍦ㄤ細鐪嬪埌鎵撳寘濂界殑apk銆
銆銆褰撶劧錛岀幇鍦ㄤ竴鑸鏄鏃犳硶瀹夎呯殑錛屽洜涓篴pk榪樻病鏈夌懼悕銆備笅闈㈠氨鏉ョ懼悕銆傜懼悕闇瑕乲eystore鏂囦歡錛屾垜宸茬粡鏈変笓鐢ㄧ殑keystore浜嗭紝濡傛灉榪樻病鏈夛紝璇峰弬闃呰繖閲岃繘琛岀敓鎴愩
銆銆鎵ц屼互涓嬪懡浠や負閲嶆柊緙栬瘧鐨刴y_game.apk絳懼悕錛
銆銆jarsigner -verbose -keystore demo.keystore Apkd.apk demo.keystore
銆銆鏈鍚庯紝鍦ㄥ畨瑁呭埌鎵嬫満鍓嶏紝闇瑕佹妸鎵嬫満涓鐨勫凡鏈夌増鏈鍏堝嵏杞斤紝鍥犱負濡傛灉絳懼悕涓嶅悓錛屾槸涓嶈兘瑕嗙洊瀹夎呯殑錛屼細鎻愮ず鈥滃簲鐢ㄧ▼搴忔湭瀹夎呪濋敊璇銆
銆銆瀹屾暣鐨勮繍琛屾儏鍐靛備笅錛

銆銆D:\developer\tools\test_apk\new\decode\dist>keytool -genkey -alias demo.keystore -keyalg RSA -validity 40000 -keystore demo.keystore
銆銆杈撳叆keystore瀵嗙爜錛
銆銆鍐嶆¤緭鍏ユ柊瀵嗙爜:
銆銆鎮ㄧ殑鍚嶅瓧涓庡撴皬鏄浠涔堬紵
銆銆[Unknown]錛 rao
銆銆鎮ㄧ殑緇勭粐鍗曚綅鍚嶇О鏄浠涔堬紵
銆銆[Unknown]錛 rao
銆銆鎮ㄧ殑緇勭粐鍚嶇О鏄浠涔堬紵
銆銆[Unknown]錛
銆銆鎮ㄦ墍鍦ㄧ殑鍩庡競鎴栧尯鍩熷悕縐版槸浠涔堬紵
銆銆[Unknown]錛
銆銆鎮ㄦ墍鍦ㄧ殑宸炴垨鐪佷喚鍚嶇О鏄浠涔堬紵
銆銆[Unknown]錛
銆銆璇ュ崟浣嶇殑涓ゅ瓧姣嶅浗瀹朵唬鐮佹槸浠涔
銆銆[Unknown]錛
銆銆CN=rao, OU=rao, O=Unknown, L=Unknown, ST=Unknown, C=Unknown 姝g『鍚楋紵
銆銆[鍚]錛 y

銆銆杈撳叆鐨勪富瀵嗙爜
銆銆錛堝傛灉鍜 keystore 瀵嗙爜鐩稿悓錛屾寜鍥炶濺錛夛細

銆銆D:\developer\tools\test_apk\new\decode\dist>jarsigner -verbose -keystore demo.keystore Apkd.apk demo.keystore
銆銆杈撳叆瀵嗛掗搴撶殑鍙d護鐭璇錛
銆銆姝e湪娣誨姞錛 META-INF/MANIFEST.MF
銆銆姝e湪娣誨姞錛 META-INF/DEMO_KEY.SF
銆銆姝e湪娣誨姞錛 META-INF/DEMO_KEY.RSA
銆銆姝e湪絳懼悕錛 res/drawable-hdpi/ic_launcher.png
銆銆姝e湪絳懼悕錛 res/drawable-mdpi/ic_launcher.png
銆銆姝e湪絳懼悕錛 res/drawable-xhdpi/ic_launcher.png
銆銆姝e湪絳懼悕錛 res/drawable-xxhdpi/ic_launcher.png
銆銆姝e湪絳懼悕錛 res/layout/activity_main.xml
銆銆姝e湪絳懼悕錛 res/menu/main.xml
銆銆姝e湪絳懼悕錛 AndroidManifest.xml
銆銆姝e湪絳懼悕錛 classes.dex
銆銆姝e湪絳懼悕錛 resources.arsc

銆銆D:\developer\tools\test_apk\new\decode\dist>
銆銆鍒版や負姝錛屼慨鏀瑰悗鐨刟pk鍙浠ユe父鐨勫畨瑁呬簡錛屼笉榪囷紝鍦ㄥ畨瑁呬箣鍓嶏紝蹇呴』瑕佸厛鍗歌澆浠ュ墠鐨刟pk錛屼笉鑳界洿鎺ユ浛鎹錛堝洜涓虹懼悕涓嶄竴鏍鳳級

❻ 如何反編譯android應用並重新打包

反編譯android步驟入下:

第一:使用apktool直接反編譯apk

第六:把生成的hellodemo.apk安裝到手機,可以看到主界面上已經顯示的是hello,而不再是你好。說明反編譯重新打包成功!

❼ Android studio 如何重新編譯組件

  1. 確認你工程內bulid.gradle內相關屬性值及調用的jar和庫描述正確

  2. 點擊build-Rebuild Project(即刪除build下的所有文件並且重新build)

熱點內容
優質網站為什麼用ip伺服器 發布:2024-05-17 09:43:34 瀏覽:792
安卓機圖片存在哪裡 發布:2024-05-17 09:42:54 瀏覽:61
ip地址怎麼查看伺服器上的文件 發布:2024-05-17 09:29:51 瀏覽:979
軲輪演算法 發布:2024-05-17 09:29:10 瀏覽:95
安卓手機鎖屏密碼一般怎麼畫 發布:2024-05-17 09:29:05 瀏覽:347
堆棧是按組織的存儲區域 發布:2024-05-17 09:29:02 瀏覽:695
sqllinkserver 發布:2024-05-17 09:19:35 瀏覽:458
訪問控制列表的編號 發布:2024-05-17 09:11:24 瀏覽:785
無線密碼忘了怎麼辦修改密碼 發布:2024-05-17 08:59:54 瀏覽:922
android自定義字體 發布:2024-05-17 08:58:24 瀏覽:541