Android2.2實現后台靜默安裝apk


最近做了一個項目,需要實現終端無人操守自動升級,但發現android2.2中對之前的安裝類都隱藏了。無奈之下去網上找資料,經過不懈的努力終於搞定了。

首先要解決的問題是如何調用已經隱藏的API、解決辦法是:

編譯源碼后會在out\target\common\obj\JAVA_LIBRARIES\framework_intermediates\下生成一個classes.jar的文件。把它加到項目的Library中。

具體步驟是:

1.在Eclipse中選中項目點右鍵選擇“Properties” 在彈出窗口左邊選擇Java Build Path, 然后選擇右邊的Libraries選項卡。

2.刪除其中的Android2.2 library,然后Add Library -> User Library  新建一個庫把剛才的classes.jar 與 android.jar再添加進來 注意先后順序,classes.jar放在前。

這時在項目中就可以引入那個隱藏的API了。前面這一步驟的作用是可以引用看到隱藏的API,在類中引用時不會報錯。

其次、經過上面的步驟后這時不要在eclipse中打包apk 會出現問題。這時把寫好的代碼拷到源碼環境中去通過mmm 命令編譯成apk.其中涉及到android.mk的編寫。

mmm命令:

$:source build/envsetup.sh

$:mmm apktest/xxx

apktest 是自己創建的目錄xxx代表項目

如果一切順利會在:out/target/product/generic/data/app下看到編譯成的apk文件。

代碼實現和android.mk編寫 我參考了這個帖子:

http://hi.baidu.com/6936995/blog/item/eca4436387a80d7b0d33fa31.html

最終問題解決了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM