0

ビデオ通話を開始しようとしていますが、毎回このエラーが表示されます

E/AndroidRuntime(668): android.content.ActivityNotFoundException: No Activity found to handle Intent { act=com.android.phone.videocall dat=tel:xxx-xxx-xxxx (has extras) }
E/AndroidRuntime(668):  at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1409)
E/AndroidRuntime(668):  at android.app.Instrumentation.execStartActivity(Instrumentation.java:1379)
E/AndroidRuntime(668):  at android.app.Activity.startActivityForResult(Activity.java:2827)
E/AndroidRuntime(668):  at android.app.Activity.startActivity(Activity.java:2933)

これが私のコードです:

Intent callIntent = new Intent("com.android.phone.videocall");
callIntent.putExtra("videocall", true);
callIntent.setData(Uri.parse("tel:" + prefs.getString("videonumber", "")));
startActivity(callIntent); 

私のマニフェストには、<uses-permission android:name="android.permission.CALL_PHONE"/>許可があります。必要なのはそれだけだと思いましたが、間違っているかもしれません。私videonumberの形式は 1-xxx-xxx-xxxx です。どんな助けでも大歓迎です。

4

2 に答える 2

0

つまり、ビデオ通話を処理できるアプリケーションが電話にインストールされていないことを意味します。

外部アクティビティを呼び出すときは、すべてのコードをブロックにラップするのが常に良い理由ですtry()catch{}。ユーザーがそのようなアプリのキンクをインストールしているという事実に頼ることはできないからです。

于 2012-08-20T15:32:35.963 に答える
0

動作しtry-catchますが、既存の Android ツールを使用して、暗黙的Intentに処理できるかどうかを確認することをお勧めします。

if (callIntent.resolveActivity(getPackageManager()) != null) {
    // Send the intent, it's safe
} else{
    // There is nothing that can handle this Intent
}
于 2018-11-09T17:53:01.590 に答える