我想發佈我的應用程序(ABC)。它是一個有聲讀物文件(只是例如。)包裝爲apk。當用戶安裝這個應用程序時,它需要檢查是否已經安裝了另一個應用程序(XYZ)。如果不讓用戶知道他們必須在安裝ABC之前先安裝應用程序XYZ。Android在安裝過程中檢查依賴應用程序?
在此先感謝
拉傑什
我想發佈我的應用程序(ABC)。它是一個有聲讀物文件(只是例如。)包裝爲apk。當用戶安裝這個應用程序時,它需要檢查是否已經安裝了另一個應用程序(XYZ)。如果不讓用戶知道他們必須在安裝ABC之前先安裝應用程序XYZ。Android在安裝過程中檢查依賴應用程序?
在此先感謝
拉傑什
如果你知道你正在尋找應用程序的軟件包名稱可以使用PackageManager來測試應用程序的存在。
try{
ApplicationInfo info = getPackageManager()
.getApplicationInfo("com.myproject", 0);
//-- application exists
} catch(PackageManager.NameNotFoundException e){
//-- application doesn't exist
}
如果XYZ是共享庫,你可以建立你的應用程序,以防止用戶無需安裝XYZ ABC的Android清單。 請使用ABC,的AndroidManifest.xml中內部的元素時指出:
<uses-library android:name="package name of XYZ" android:required="true" />
希望這有助於你的問題。
雖然我不認爲你可以這樣做「安裝」。您需要在第一次運行該應用時最有可能。 – 2010-03-25 20:14:46
正確...我不認爲有可能在安裝時運行此代碼。也就是說,你可以在安裝過程中採取什麼行動?第一次有人真正運行你的應用程序時,檢查是否存在另一個應用程序會更好嗎? – JeremyFromEarth 2010-03-25 20:47:43
「這就是說,你可以在安裝過程中採取什麼行動?」什麼都沒有 - 你不能在用戶的控制下首先啓動你的應用程序。 「在第一次有人真正運行你的應用程序時,檢查是否存在另一個應用程序會更好嗎?」沒有選擇 - 這是唯一的選擇。我曾經爭論過APK的一個依賴系統來處理這種情況,並且響應一直是......不堪設想的。 – CommonsWare 2010-03-25 21:01:03