導航:首頁 > 軟體資訊 > app如何靜默更新

app如何靜默更新

發布時間:2024-10-27 21:24:14

android app 靜默升級需要包名嗎

實現靜默安裝必須要2個前提條件:1、必須有對機器的ROOT許可權 ; 2、必須有編譯源碼的環境

具備了以上2個條件就可以實現靜默安裝了。。

1、首先必須實現一個觀察者的類,來監聽apk安裝成功或者失敗,所以我們先寫一個類去繼承IPackageInstallObserver.Stub,

由於IPackageInstallObserver.Stub不是開放api,所以我們自己必須在改類前面加import android.content.pm.IPackageInstallObserver;

具體代碼如下:

[java] view plain

class PackageInstallObserver extends IPackageInstallObserver.Stub {

public void packageInstalled(String packageName, int returnCode) {

// 該方法裡面可以根據returnCode的值判斷apk安裝成功或者失敗

// 1表示成功 0表示失敗

if (returnCode == 1) {

Log.e(TAG, packageName + " install Success");

} else {

Log.e(TAG, packageName + "install fail ");

}

}

}

2、現在就來看看靜默安裝的方法了

其中方法中的參數packageName是你需要安裝的應用apk的包名 , path表示apk在本地所在的路徑

[java] view plain

public void SilentInstall(String packageName, String path) {

Uri uri = Uri.fromFile(new File(path));

int installFlags = 0;

PackageManager pm = getPackageManager();

try {

PackageInfo packageInfo = pm.getPackageInfo(packageName,

PackageManager.GET_UNINSTALLED_PACKAGES);

if (packageInfo != null) {

installFlags = PackageManager.INSTALL_REPLACE_EXISTING;

}

} catch (NameNotFoundException e) {

Log.e(TAG, "NameNotFoundException = " + e.getMessage());

}

PackageInstallObserver observer = new PackageInstallObserver(); // PackageInstallObserver

// 就是1中實現的觀察者類

pm.installPackage(uri, observer, installFlags, packageName);

}

好了,上面2個步驟做好了後在AndroidMainfest.xml加上安裝包的許可權

[java] view plain

加如許可權之後就可以編寫Android.mk文件了,這個Android.mk我是從 源碼package/APP/PackageInstaller中的Android.mk拷貝過來,然後將其中的

[java] view plain

LOCAL_PACKAGE_NAME := Test //其中Test是你項目的名稱

做完上述所有步驟之後,就可以將這個項目放在源碼環境下編譯了,編譯成成功後會在out\target\proct\leader75_6628_ics2\system\app生成改項目的apk

然後push到system/app或者編譯在升級包裡面就可以使用了。

注意:單獨編譯項目的時候,可以將一些沒用的文件夾刪除掉,比如gen bin等,下面圖片就是我編譯之前刪除後的目錄結構

閱讀全文

與app如何靜默更新相關的資料

熱點內容
怎樣把圖片分別放置在文件夾中 瀏覽:869
推流伺服器地址是什麼 瀏覽:628
java允許多重繼承 瀏覽:509
解壓小玩具好玩又可愛 瀏覽:406
騰訊雲大帶寬伺服器 瀏覽:818
加密鎖的售後 瀏覽:268
linux登不上去 瀏覽:729
聯想伺服器休眠後如何喚醒 瀏覽:111
四川話女孩學習編程 瀏覽:322
編譯原理文法區分 瀏覽:1001
教師可以做程序員嘛 瀏覽:637
終結戰場安卓國際服怎麼下載 瀏覽:155
現在的高端伺服器屬於什麼 瀏覽:810
企業銀行解壓流程 瀏覽:447
用app壓縮文件 瀏覽:227
柱子正負零加密區 瀏覽:322
車輛貸款交完要去4s店解壓 瀏覽:65
電腦可以運行plc編程嗎 瀏覽:594
下載app的怎麼連不上 瀏覽:765
程序員做量化交易有前途么 瀏覽:233