Android項目打包apk及apk的反編譯,androidapk

來源:互聯網
上載者:User

Android項目打包apk及apk的反編譯,androidapk
一、項目打包的一般原理及其缺點

(1)開發一個簡單的項目,發布的時候為一個APK檔案,如果我們不使用簽名的方式,直接在bin目錄下找到*.apk檔案,很方便,但是我們的使用者在使用的時候,有可能會被其他的程式覆蓋安裝;具體解釋如下:


(2)我們建立一個項目Test目錄結構如下,並把它發布到模擬器上,得到我們的打包檔案Test.apk


(3)然後我們在看模擬器中的檔案目錄資訊,我們在安裝的應用,都會在安卓機器上的data----data---具體的安裝資料夾,例如我的是:com.example.test



這裡的com.example.test是在,項目目錄下的AndroidManifest.xml檔案中,因此我們可以修改他的檔案名稱


(4)到這裡,如果遇到相同的安裝目錄名,就有可能覆蓋我們的應用程式,造成惡意的破壞!


二、帶有數位簽章的打包方式

(5)那我們就需要使用簽名的方式,打包我們的軟體,步驟很簡單,點擊項目右鍵---Android-Tools---Export Android Application--然後後邊的就不在介紹!按照自己需求進行即可!


三、apk的反編譯實現過程

(6)在上一步中,我們已經產生了一個簽名的apk檔案Test.apk然後我們使用解壓軟體,解壓,


既是解壓後的目錄,各種設定檔都在,就是缺少我們的源檔案和R類等

(7)其中classes.dex檔案,就是我們項目中src目錄下源碼的編譯,二resources.arsc既是我們R類中的編譯檔案

(8)現在我們開始反編譯,查看其中的源檔案和R類

(9)準備工具dex2jar和JD-GUI這兩個工具網上很多,搜尋下載即可(http://yunpan.cn/cfpRvDD8QJcKi     提取碼 c156)

(10)開始:將classes.dex檔案拷貝到我們的工具dex2jar檔案目錄下:



(11)然後在中的地址欄中將地址刪除然後敲入cmd斷行符號(這樣的話我們可以直接定位到該目錄下!非常好使)或者自己手工找到該目錄下!


(12)然後執行dex2jar.bat 後邊加上剛才拷貝的要反編譯的檔案calsses.dex


(13)然後就會在dex2jar工具下產生一個jar檔案(到這裡這個jar還只是class檔案需要使用下一個工具才可以)


(14)然後將產生的class_dex2jar.jar檔案拖入到第二個工具JD-GUI中,就可以看到了


(15)另外我們還可以點擊file--save all sources產生原始碼的檔案,這個就不了,原始碼有了剩下的是殺是刮隨你便

(16)到此為止,已經完成對軟體的反編譯,這樣的話我們可以輕鬆愉快的閱讀別人的原始碼了!


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.