1. 程式人生 > >Mac 反編譯及重新打包

Mac 反編譯及重新打包

1.apktool官網按照步驟一步一步操作

這裡解讀一下:

(1)點選連結進入介面右鍵儲存檔名為apktool(或者可以通過複製網頁內容到SublimeText中進行儲存)。

(2)點選連結下載最新版本的apktool_X.X.X.jar。

(3)將(2)中下載的jar重新命名為apktool.jar。

(4)將下載好的apktool和apktool.jar檔案複製到/usr/local/bin檔案目錄下,直接資料夾不好找的話可以通過命令列開啟

命令:open /usr/local/bin

(5)執行命令 chomod +x apktool , chomod +x apktool.jar(需要先進入bin目錄下執行這兩條命令,進入bin目錄的命令:cd /usr/local/bin)

注:這裡執行第一條命令可能會提示 -bash:apktool: command not found,這種情況下可以執行命令ll檢視該目錄下的所有檔名,如果發現apktool檔案有後綴.sh的話需要再執行一條命令 mv apktool.sh apktool,然後再執行命令ll檢視發現.sh字尾已經被移除了。

(6)執行命令 apktool,如果出現下圖結果即說明apktool安裝好了。

2.進入要反編譯的apk所在的目錄下,執行命令apktool d 要反編譯的apk名字.apk。出現如下結果即反編譯成功了。

此時會發現在該檔案目錄下會多出一個與apk名字一樣的資料夾,該資料夾內包含:AndroidManifest.xml,res資料夾,smali資料夾。其中smali資料夾內就是每個java類所對應的smali檔案,本次反編譯只涉及修改logo和layout佈局檔案,暫時沒有用到修改java類檔案,故此處暫不作smali檔案修改說明。

3.(1)要修改logo,可在mainfest檔案中檢視icon對應的圖片位置及圖片名稱。

在res資料夾下找到對應的圖片,將新圖片命名為要替換的圖片名稱,copy到同個目錄下直接替換就可以了。

(2)要修改佈局檔案,可以在手機上開啟未被編譯的apk,檢視哪個介面哪裡的文字或者控制元件需要隱藏或修改,在layout佈局中進行修改即可。確定要修改的佈局檔案的名稱可以通過檔案命名推測,如果佈局檔案較少不嫌麻煩也可以一個一個開啟檢視修改。

4.重新打包apk。

執行命令apktool b 反編譯的檔名,如下所示,即重新打包成功。此時會在反編譯得到的資料夾內多出dist資料夾,重新打包的apk即在該資料夾內。

此時的apk如果直接安裝手機上會報錯,其實就是簽名不對,我們接下來重新對包進行簽名。

5.重新生成簽名檔案。

執行命令:keytool -genkey -keystore cloudbeacon.keystore -keyalg RSA -validity 10000 -alias cloudbeacon

該命令會重新生成簽名檔案,預設儲存在與原apk同級的資料夾下。

6.apk重新簽名。

執行命令:jarsigner -digestalg SHA1 -sigalg MD5withRSA -tsa -verbose -keystore cloudbeacon.keystore -signedjar cloudbeacon-signed.apk cloudbeacon.apk cloudbeacon

正常應該是可以打包成功了,但我這裡不知道為什麼報錯了,暫時沒有找到解決辦法。報錯如下:

我後邊打包是通過360加固寶對apk進行重新簽名的。這裡簡單提一下:360加固寶-輔助工具-簽名apk。

這次得到的apk再在手機上安裝就可以正常運行了,並且可以看到自己修改的內容。

相關推薦

Mac 編譯重新打包

1.apktool官網按照步驟一步一步操作 這裡解讀一下: (1)點選連結進入介面右鍵儲存檔名為apktool(或者可以通過複製網頁內容到SublimeText中進行儲存)。 (2)點選連結下載最新版本的apktool_X.X.X.jar。 (3)將(2)中下

APK檔案使用ApkTool解包編譯重新打包簽名

前段使用一直使用一個手機APK軟體,不過最近軟體更新,出現了一個很討厭的語音提示,於是想通過重新編譯把語音提示去掉。 【準備工作】 配置JAVA環境,到http://www.java.com/下載並進行安裝,如已安裝的可忽略 Windows下只需要下載這兩個檔案

Android編譯重新打包

在android開發中經常會遇到需要反編譯競品的需求,題主也就針對反編譯apk後替換sdk後重新打包的場景進行試驗,下面一步一步來說明Android如何反編譯後重新打包。 一個典型apk包中包含的內容 我們知道android專案編譯成應用程式後的安裝檔案是.apk檔案,執行期間

Android 如何對apk檔案進行編譯以及重新打包簽名

最近在看視訊的時候看到有關apk檔案如何反編譯的,頓時提起了自己的興趣,記得在剛剛學習Android的時候就對這方面有興趣,只是當時自己的技術…咳…現在自己…咳咳..咳… 注:以下的前提是Java相關環境變數配置完成 我覺得反編譯無非就是能夠得到其apk的資

Java-----jar編譯修改重新打包

一、使用反編譯工具JD-GUI(JD-GUI相關操作見Java-----反編譯class檔案)開啟要修改的jar包(如update.jar),找到jar包中要修改的class檔案(如a.class) 二、開啟Eclipse新建一個Java工程(如demo),並新增一個類(

Mac編譯重新編譯打包APK

反編譯APK需要的工具如下: - dex2jar 這個工具用於將dex檔案轉換成jar檔案 下載地址:http://sourceforge.net/projects/dex2jar/files/

APK編譯、重打包、簽名之apktool實現

1.下載apktool https://download.csdn.net/download/qq_25844803/10842372 (點一下,爽一年,我是渣渣輝) 2.準備環境 將解壓出來的apktool.bat和apktool.jar放到同一個資料夾下(如:C:\apkto

beyond compare 對class檔案編譯比較

首先開啟beyond compare,選擇工具-》檔案格式,點選開啟檢視是否有一下選項(預設沒有),有的話請打鉤,沒有則需要安裝外掛 搜尋框輸入class關鍵字 點選下載 下載完成後,會得到 BCFormats.bcpkg 檔案。開啟已經安裝完畢的beyon

Android APK編譯去廣告漢化,apk優化簽名等

概述 Android APK反編譯是個有趣的事情。我們可以對APK反編譯進行漢化破解工作等。 Android APK反編譯主要涉及三個工具的使用,分別是 apktooldex2jarjd-gui(即jad)最後介紹了一款國人開發的整合反編譯工具AndroidKiller

Android APK編譯、重打包、重簽名

準備工作 Apk反編譯 個人覺得這兩個檔案直接放到 C:\Windows 下比較方便,開啟dos命令可以直接使用 反編譯命令列 apktool d -f 需要反編譯的apk -o 反編譯生成的目錄 例如:apktool d -f

APK編譯二次打包工具和方法

文章前言: 對於反編譯如果沒有比較好的Android基礎同時也沒付諸實踐和學習的話,實質上也不能從反編譯的一堆程式碼檔案中,得到有價值的資訊。 例如程式碼都被Android打包成dex檔案,通過這個檔案復原出來問題不大,但大部分的情況是復原後的Java檔案,基本上不

Android打包系列 JAR編譯修改後重新打包

在工作中,有些第三方JAR不能滿足我們的特殊需求,所以經常會有需要修改JAR的情況,這裡給出基本的修改思路,然後再輔以例項。 思路 使用反編譯工具JD-GUI)開啟要修改的jar包(如beforeModify.jar),找到jar包中要修改的class檔案(如A.class)

Android簡單的編譯Apk並重新打包,簽名釋出

本文簡單介紹apk是如何修改logo(ic_launcher),類似的資原始檔修改也可以通過此方式。不過要修改class的話就要涉及到smali的學習了,這裡就暫且不談,後續有需要再做更新。 一、工具介紹: apktool:用來反編譯apk,apk重新打包

Android實用技能:你應該掌握的APK編譯技巧以及重新打包釋出

需要的工具 1,apktool: 反編譯獲取資原始檔的工具,包括圖片資源和佈局檔案等的獲取 下載地址:https://bitbucket.org/iBotPeaches/apktool/downloads 2,dex2jar:反編譯獲取原始碼的工具,將classes.dex 轉化為jar

將JAR包編譯,修改後重新打包(轉)

  有道是,知其然才知其所以然。有時候,我們必須讀取jar裡的打包的類。而有時還有可能要對它進行小量修改,使之適用於自己的非凡需求。前期預備   Java反編譯工具:   JGUI  http://pan.baidu.com/s/1o6xCtsQ   壓縮工具:   Winrar開始   1. 將jar包

安卓apk編譯、修改、重新打包、簽名全過程

首先明確,反編譯別人apk是一件不厚道的事情。程式碼是程式設計師辛苦工作的成果,想通過這種手段不勞而獲,是不對的。這也說明,程式碼混淆是非常重要的。本文抱著學習的態度,研究在一些特殊的情況下如果有需要,該怎麼反編譯apk。 工具簡介 ,編譯和反編譯apk

一步一步帶你編譯apk,並教你修改smali和重新打包

一、工具介紹: 1.apktool:aapt.exe,apktool.bat,apktool.jar;三個在同一目錄結合使用,用來反編譯apk,apk重新打包; 2.dex2jar:該工具作用是將classes.dex檔案,反編譯出原始碼(如果apk未加固),反編譯出文件

android 加固防止編譯-重新打包

1、需要加密的Apk(源Apk) 2、殼程式Apk(負責解密Apk工作) 3、加密工具(將源Apk進行加密和殼Dex合併成新的Dex) 主要步驟: 我們拿到需要加密的Apk和自己的殼程式Apk,然後用加密演算法對源Apk進行加密在將殼Apk進行

編譯apk加入jar包在重新打包簽名的方法

反編譯apk將自己的jar包加進去在重新打包簽名 1.將apk用apktool反編譯 命令:java -jar apktool d xxx.apk 2.將將要放入目標apk的jar包使用apktool反編譯 3.將jar的smali檔案和資原始檔等全部加

編譯apk插入日誌重新打包流程

前言 最近公司向抓取各個應用市場本公司三國殺的玩家評論的資料,通過一般的抓包可以抓取部分應用市場資料,部分應用市場抓取不到。於是在服務端不能解決的情況下,只能從客戶端尋求突破,反編譯應用市場apk,通過新增日誌獲取到請求評論的url。 準備工具 dex