1

のような URL スキームを使用して、Android アプリからスカイプ (またはその他の) アプリケーションを使用できます'skype://'
しかし、ユーザーの携帯電話でスキーマの存在を確認できますか? canOpenURLiOSのように
ありがとう。

4

2 に答える 2

1

以下を使用して、インテントを処理できるかどうかを確認できます。

public static boolean intentIsAvailable(Context ctx, Intent intent) {
   final PackageManager mgr = ctx.getPackageManager();
   List<ResolveInfo> list =
      mgr.queryIntentActivities(intent, 
         PackageManager.MATCH_DEFAULT_ONLY);
   return list.size() > 0;
}

利用方法:

if(intentIsAvailable(appContext, yourIntent)){
   startActivity(intent); 
}
于 2015-10-16T15:56:43.033 に答える
0

ACTION_VIEWスキーム自体は無意味です。スキームは、内の何らかのアクション( 、、ACTION_CALLなど)に関連付けられている必要がありIntentます。

あなたのJavaコードは、あなたがそれを使って呼び出す場合、与えられたものがシステムによって処理されるかどうかを決定するために呼び出すことができresolveActivity()ます。PackageManagerIntentstartActivity()Intent

于 2012-07-03T17:40:52.757 に答える