1

アプリでバックグラウンドで呼び出す必要があるため、ユーザーがボタンをクリックすると、バックグラウンドで呼び出しを開始する必要があります。ユーザーは自分が呼び出していることを認識しますが、ダイヤラーは表示されず、アプリが表示され、再現されます通話中に鳴ります。

基本的に私が欲しいのは、アクティビティを終了せずに電話をかけることです

サービスを試してみましたが、うまくいきません

 Intent callIntent = new Intent(Intent.ACTION_CALL);
 callIntent.setData(Uri.parse("tel:123456789"));
 startService (callIntent);

私の英語でごめんなさい

4

2 に答える 2

1

コードビハインド:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    call();
}

private void call() {
    try {
        Intent callIntent = new Intent(Intent.ACTION_CALL);
        callIntent.setData(Uri.parse("tel:123456789"));
        startActivity(callIntent);
    } catch (ActivityNotFoundException e) {
        Log.e("sample call in android", "Call failed", e);
    }
}

Manifest.xml
追加..

<uses-permission android:name="android.permission.CALL_PHONE"></uses-permission>

または、

<uses-permission android:name="android.permission.CALL_PRIVILEGED"></uses-permission>

編集: まあ、tasomaniacは、OP も望んでいる既存の現在の活動について良い点を指摘しました。

基本的に私が欲しいのは、アクティビティを終了せずに電話をかけることです。

しかし、Android のテレフォニー インターフェイスの通話状態の間は何もできません。考えられる良い解決策の 1 つはPhoneStateListener、通話がいつ終了したかを確認してから、現在のアクティビティを再開することです。非常に優れた解決策がいくつか説明されています。

于 2013-07-16T12:34:18.920 に答える