2016-07-23 184 views
-6

我看到一些帶有「廣告」的應用,您可以通過它獲得應用內獎勵(通常適用於遊戲),即安裝應用。這些通常能夠檢查應用程序是否存在於設備上。如何檢查用戶是否安裝了應用程序?

如何從Android應用程序(使用Java)檢查設備上是否安裝了特定的應用程序?

回答

1

定義,則返回true的方法,如果PackageManager可以找到它:

實施例:

private boolean checkThisApp(String uri) { 
    PackageManager myPackageManager = getPackageManager(); 
    boolean app_installed; 
    try { 
     myPackageManager.getPackageInfo(uri, PackageManager.GET_ACTIVITIES); 
     app_installed = true; 
    } 
    catch (PackageManager.NameNotFoundException e) { 
     app_installed = false; 
    } 
    return app_installed; 
} 

和在活動使用它/片段等:

boolean isAppInstalled = checkThisApp("com.facebook.katana"); 
+0

它適用於所有應用程序嗎? – Zoe

+1

它應該使用Android的包管理器來查詢所有已安裝的包。你也可以看看http://stackoverflow.com/questions/2695746/how-to-get-a-list-of-installed-android-applications-and-pick-one-to-run – LuigiPower

相關問題