apk反編譯包名
① APK包名修改 請問如何修改APK包名
基本過程如下:
1、將apk解包成一個文件夾
2、修改AndroidManifest.xml中對應的包名
3、修改smali目錄下中的包
4、將文件夾打包成apk
5、將apk重新簽名
6、驗證apk的簽名
7、優化apk
8、安裝apk,並測試
基本前提條件:
1、java的環境
2、Eclipse及android的開發環境(這個主要是用來進行調試)
3、text文本編輯器,本人用的是UEdit,也可以用類似的,主要是利用其查找及替換功能
這篇文章主要用來反編譯apk得到源碼,但google進行了反制,只能得到一些可讀性不高的源碼,這里主要是利用反編譯apk生成程序的源代碼和圖片、XML配置、語言資源等文件.
參考文獻里提到的apktool-1.0.0.tar.bz2和apktool-install-windows-2.1_r01-1.zip均可以從http//code.google.com/p/android-apktool/上下載,下載好之後,將涉及的命令行目錄及exe目錄添加到電腦的path路徑中,這樣就便於操作了,如檢測apktool是否可以,可以在命令行中輸入apktool,如果可以識別就表示OK了。
② APK包名修改 請問如何修改APK包名
基本過程如下:
1、將apk解包成一個文件夾
2、修改AndroidManifest.xml中對應的包名
3、修改smali目錄下中的包
4、將文件夾打包成apk
5、將apk重新簽名
6、驗證apk的簽名
7、優化apk
8、安裝apk,並測試
基本前提條件:
1、java的環境
2、Eclipse及android的開發環境(這個主要是用來進行調試)
3、text文本編輯器,本人用的是UEdit,也可以用類似的,主要是利用其查找及替換功能
這篇文章主要用來反編譯apk得到源碼,但google進行了反制,只能得到一些可讀性不高的源碼,這里主要是利用反編譯apk生成程序的源代碼和圖片、XML配置、語言資源等文件.
參考文獻里提到的apktool-1.0.0.tar.bz2和apktool-install-windows-2.1_r01-1.zip均可以從http//code.google.com/p/android-apktool/上下載,下載好之後,將涉及的命令行目錄及exe目錄添加到電腦的path路徑中,這樣就便於操作了,如檢測apktool是否可以,可以在命令行中輸入apktool,如果可以識別就表示OK了。
參考了國內的技術文章後,有人發帖以上面的思路進行操作,但沒有發技術文章,所以筆者只能去國外論壇中逛逛了,在Stack Overflow中,找到了相關的帖子,有老外留言"you can't do this",這個的確有違技術道德,但這里只做學習參考或交流。找到了一片帖子http://stackoverflow.com/questions/9218641/renaming-the-package-name-inside-an-apk,這篇帖子的回答給了比較詳細的步驟(如上),他的情況比這個還稍微復雜點,簡化後就是我要的結果,我就是按照這個基本步驟來的,回答的英文比較好懂(很有可能是國人)。
下面就按照上面的步驟一步步操作:我是已QQ瀏覽器4.0版的apk來操作的。
1、我的apktool安裝到了E盤下的apktool目錄下,所以的操作也在這個目錄下進行 E:\apkTool
將apk復制到E:\apkTool目錄下,重命名為qq4.0.apk(這個沒有要求,隨意就好)
將apk解包 命令行下cd到E:\apkTool這個目錄 apktool d qq4.o.apk qq4 將apk解包到qq4(這個也可以隨意)這個目錄
E:\apkTool\qq4這個目錄下內容如下:
2、修改AndroidManifest.xml中的包名,
將package後面的包名com.tencent.qbx改為你想要的新包名,我改為了com.tianxiao.tencentweb
將涉及原包名的com.tencent.qbx的相關activity的聲明中的包名均改為新包名com.tianxiao.tencentweb
至於intent-filter裡面的action名中包含原包名的,則可以不改,如果改的話,代碼中也要相應的改變
另外,如果有provider,provider的authorities也得改,這個在同一手機上必須唯一,否則安裝會失敗
3、在E:\apkTool\qq4\smali目錄下,有很多子目錄,子目錄下的文件多以smali結尾,這中文件的語法有點類似於匯編語言,具體原理就不深究了。
將smali目錄下的所有文件中的原包名的聲明形式com/tencent/qbx改為新包名com/tianxiao/tencentweb
具體如下,用UEdit在文件中替換即可,將目標目錄指向E:\apkTool\qq4\smali,這個將近1000條左右
如果之前改為action裡面的包名,也要將字元串形式的包名com.tencent.qbx改為com.tianxiao.tencentweb
如果有provider也要講原來的authorities值改為在AndroidManifest.xml中新改的authorities值。
4、將E:\apkTool\qq4重新打包為apk
apktool b qq4 newqq.apk
5、將新的newqq.apk 重新簽名
簽名的方法很多,一主要是手動生成簽名,用命令行簽名
我採用的現成的,下載了一個Auto-sign的文件夾,進行了簽名,這個比較簡單,網上帖子很多,就不贅述。
新簽名後的apk名為 newqq4signed.apk
6、驗證簽名 是否正確
jarsigner -verify -verbose -certs newqq4signed.apk
一般來說,沒問題,略過
7、優化apk
zipalign -v 4 newqq4signed.apk latestqq.apk 優化過的apk名為latestqq.apk
8、安裝新的apk,驗證是否成功
這個最好把Eclipse打開,手機連上,查看logcat的安裝信息。
我嘗試了3次才成功,主要是忘了 provider的authorities的處理,
出錯信息如下: Can't install because provider name qbx_bookmarks (in package com.tianxiao.tencentweb) is already used by com.tencent.qbx
原因很清楚,所以debug還是相當給力的,原來不喜歡debug,看debug過程可以更好的了解執行過程。
③ 將原安卓apk反編譯後簽名,有原簽名文件
一、可以使用如APKTool之類的反編譯工具,使用方法網上有介紹,反編譯完成後修改所有引用包名的地方及對應的文件夾,然後重新編譯為新的APK,最後再用簽名工具簽名就行。
二、第一步是用命令行的形式進行的,如果不願意進行繁瑣的配置過程,可以使用一些可視化的APK修改工作,如APK改之理、VTS(Virtuous
Ten
Stdio)等,但主要修改的地方更第一步是一致的。
④ 如何修改apk包名
可以通過反編譯把apk解包,可以通過apktool這種工具
修改清單文件包名,同時代碼里相關activity的聲明中的包名均改為新包名
重新打包apktool回編譯
利用簽名工具或者安卓開發SDK自帶的keytool 或 jarsigner 把回編譯APK重新簽名
⑤ 怎麼給軟體改包名有會的嗎幫改一下
咨詢記錄 · 回答於2021-12-18
⑥ 一個安卓應用的.apk怎麼查看包名
一個安卓應用的.apk查看包名的具體步驟如下:
1、首先將手機和電腦連接在一起,點擊打開開始菜單欄中的「運行」選項。
⑦ 跪求高手修改apk文件包名
按裝個JAVA虛擬機,然後找個APK反編譯工具,就可以改了(如字體顏色啊,增加一些 模塊等)。如果你要是改圖標名稱換掉聲音啊!顯示效果啊 等,就不需要了,直接用winrar打開就可以了(把擴展名APK改為zip或rar).
⑧ 如何修改APK包名
下載安裝:藍冰apk反編譯大師
選擇「工程管理器」在選擇「Res」文件夾展開。接下來我們先要修改軟體名字,那麼我們向下拉找到「values」文件夾展開。找到「strings.xml」文件雙擊就可以了。app_name 對應的就是軟體的名稱。直接替換修改即可。
drawable-hdpi就是圖標文件夾,直接替換即可。修改包名就是修改AndroidManifest.xml文件對應的package值即可。
都替換好了後直接編譯即可。
⑨ 如何通過反編譯查詢apk包名信息
首先安裝java環境,然後到google code裡面下載apktool1.5.2.tar.bz2和apktool-install-windows-r05-ibot.tar.bz2
從兩個壓縮包中解壓aapt.exe、apktool.bat和apktool.jar三個文件,放在一個文件夾中(為方便命令行中使用apktool命令,可將解壓到的路徑放入path或者直接將這三個文件放入path路徑下的文件夾,如C:\Windows)
通過cmd運行 Apktool 命令:
apktool d XXX.apk ABC 反編譯XXX.apk到文件夾ABC
apktool b ABC 從文件夾ABC重建APK,輸出到ABC\dist\out.apk
⑩ 安卓apk文件如何反編譯
安卓apk文件反編譯:
一、反編譯xml文件
1>
首先下載我給你們提供的文件夾apk_fanbianyi,把它放到某個盤的根目錄下(為了方便輸入dos命令),然後打開apktool文件夾,安裝win+r鍵,然後輸入cmd,進入dos命令行,大家別怕,不用暈,很簡單的。
2>
然後在dos命令中首先輸入文件夾所在盤符+「:」回車,接著再輸入cd+apktool所在目錄,切換dos工作空間到apktool文件夾下。
3>
接著輸入
apktool.bat
d
【需反編譯apk文件路徑】
{【反編譯文件反編譯後的路徑】},其中最後一部分可以省去,系統會默認把apk文件反編譯到apktool目錄下,例如輸入
apktool.bat
d
d:/apk_fanbianyi/ttkp.apk,在apktool文件夾下就會生成一個ttpk的文件夾,所有的xml文件全部反編譯成功。
二、反編譯java文件
1>
首先解壓需要反編譯的apk文件,拷貝出裡面的classes.dex文件到dex2jar文件夾(為了方便操作,省去dos命令輸入路徑的麻煩)
2>
把工作空間切換到dex2jar文件夾下,輸入命令cd
d:/apk_fanbianyi/dex2jar回車
3>
輸入命令dex2jar.bat
classes.dex回車,發現dex2jar文件夾下多了一個classes_dex2jar.jar文件,這是反編譯成功的java文件
三、xml文件的打開
1>
打開apktool文件夾下的ttkp文件夾,任意找到一個xml文件,選中單擊右鍵,選擇notepad++打開(需下載),如果沒有此軟體,可以選擇打開方式,選擇記事本打開
四、java文件的打開
1>
dex2jar文件夾下的classes_dex2jar.jar拷貝到apktool文件夾的ttkp文件夾中,不能用notepad++打開,不然會亂碼的
2>
啟動apk_fanbianyi文件夾下的jd-gui.exe,然後點左上角file,選擇open
file,找到classes_dex2jar.jar文件,可以發現有很多包,選擇包下的任意一個java文件,打開不亂碼了,是不是很神奇,哈哈,你學會了安卓apk文件反編譯