項目發布的相關知識(3)

來源:互聯網
上載者:User

標籤:android   style   blog   http   使用   strong   

按照步驟開發一個最簡單的應用程式,一行代碼都不用寫,
就可以得到一個可啟動並執行apk
1:apk簽名
1)通過ADT提供的圖形化介面完成apk簽名;
右鍵項目——》 Android Tools ——》Export Signed Application Package... ——》 開啟圖形介面
2)通過ADT提供的圖形化介面完成apk簽名;
右鍵項目——》 Export ——》Android+ Export Android Application——》 開啟圖形介面
命令列的方式就不說了,有工具用工具最好。

2)產生未經簽名的apk檔案
      既然我們要自己對apk進行簽名,就不再需要ADT預設幫我們簽名了。如何得到一個未經簽名的apk檔案呢?開啟Eclipse,在Android工程名稱上點擊右鍵,依次選擇"Android Tools" - "Export Unsigned Application Package ...",然後選擇一個儲存位置儲存即可。這樣就得到了一個未經簽名的apk檔案。
    未經簽名的apk檔案是不能安裝的。

debug簽名的應用程式有這樣兩個限制,或者說風險:
      1)debug簽名的應用程式不能在Android Market上架銷售,它會強制你使用自己的簽名;
      2)debug.keystore在不同的機器上所產生的可能都不一樣,就意味著如果你換了機器進行apk版本升級,那麼將會出現上面那種程式不能覆蓋安裝的問題。不要小視這個問題,如果你開發的程式只有你自己使用,當然無所謂,卸載再安裝就可以了。但要是你的軟體有很多使用客戶,這就是大問題了,就相當於軟體不具備升級功能
 

(1)數位憑證的有效期間要包含程式的預計生命週期,一旦數位憑證失效,持有改數位憑證的程式將不能正常升級。
(2)如果多個程式使用同一個數位憑證,則該數位憑證的有效期間要包含所有程式的預計生命週期。
(3)Android Market強制要求所有應用程式數位憑證的有效期間要持續到2033年10月22日以後。


2:代碼反編譯
如果把apk用解壓,我們可以看到裡面有加密過的資源檔以及dex包。資源檔我們可以使用apktool這個工具來解密,
https://code.google.com/p/android-apktool/downloads/list
參考命令列:...01_開發環境\apktool1.5.2>apktool d -f -b -s E:\workspace\temp\TestVss.apk  E:\workspace\temp\z

將dex轉變為jar包
https://code.google.com/p/dex2jar/downloads/list
參考命令列:...01_開發環境\dex2jar-0.0.9.15>dex2jar.bat E:\workspace\temp\z\classes.dex

jar包的內容可以用jd-gui.exe裡查看。
http://jd.benow.ca/

 

3:代碼混淆
Eclipse中建立一個項目時,在工程的根目錄,會自動產生兩個ProGuard的混淆檔案:proguard-project.txt和project.properties
在project.properties中,它以及預設將混淆代碼的語句寫好了,只要解開注釋就可以了。
# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):
proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
目錄分別表示全域的混淆規則和項目的混淆規則。
具體的配置資訊,可以參考一下:
http://www.cnblogs.com/ruiati/p/3548758.html

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.