-2
我有一個應用程序可以在Chrome自定義選項卡中打開鏈接。但是,當用戶第一次運行它(並且他安裝了多個瀏覽器)時,它會給用戶一個彈出窗口,要求他選擇默認應用程序(即,您是否想將默認設置爲UCBrowser或Chrome等)默認情況下打開應用程序
有什麼我可以跳過這個彈出窗口,並始終打開鉻我的應用程序?
我有一個應用程序可以在Chrome自定義選項卡中打開鏈接。但是,當用戶第一次運行它(並且他安裝了多個瀏覽器)時,它會給用戶一個彈出窗口,要求他選擇默認應用程序(即,您是否想將默認設置爲UCBrowser或Chrome等)默認情況下打開應用程序
有什麼我可以跳過這個彈出窗口,並始終打開鉻我的應用程序?
是的,你可以使用PackageManager
這個
String url = "http://www.example.com";
PackageManager pm = context.getPackageManager();
Intent launchIntent = pm.getLaunchIntentForPackage("com.android.chrome");
launchIntent.setData(Uri.parse(url));
if (launchIntent != null) {
context.startActivity(launchIntent);
} else {
Toast.makeText(context, "Chrome not found", Toast.LENGTH_SHORT).show();
}
或者你也可以只使用setPackage
方法上Intent
Intent launchIntent = new Intent();
launchIntent.setAction("android.intent.action.VIEW");
launchIntent.addCategory("android.intent.category.BROWSABLE");
launchIntent.setPackage("com.android.chrome");
launchIntent.setData(Uri.parse(url));
startActivity(launchIntent);
,但你必須確保包是否存在setPackage之前(com.android.chrome在你的情況)
只是想確保你明白,Chrome可能沒有安裝在設備上。 –
我們事先有明確的檢查。如果chrome沒有安裝,我們繼續在web視圖中。 –