TelecomManager.AddCall メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
Android システム サービス Telecom への呼び出しを追加します。
[Android.Runtime.Register("addCall", "(Landroid/telecom/CallAttributes;Ljava/util/concurrent/Executor;Landroid/os/OutcomeReceiver;Landroid/telecom/CallControlCallback;Landroid/telecom/CallEventCallback;)V", "GetAddCall_Landroid_telecom_CallAttributes_Ljava_util_concurrent_Executor_Landroid_os_OutcomeReceiver_Landroid_telecom_CallControlCallback_Landroid_telecom_CallEventCallback_Handler", ApiSince=34)]
[Android.Runtime.RequiresPermission("android.permission.MANAGE_OWN_CALLS")]
public virtual void AddCall(Android.Telecom.CallAttributes callAttributes, Java.Util.Concurrent.IExecutor executor, Android.OS.IOutcomeReceiver pendingControl, Android.Telecom.ICallControlCallback handshakes, Android.Telecom.ICallEventCallback events);
[<Android.Runtime.Register("addCall", "(Landroid/telecom/CallAttributes;Ljava/util/concurrent/Executor;Landroid/os/OutcomeReceiver;Landroid/telecom/CallControlCallback;Landroid/telecom/CallEventCallback;)V", "GetAddCall_Landroid_telecom_CallAttributes_Ljava_util_concurrent_Executor_Landroid_os_OutcomeReceiver_Landroid_telecom_CallControlCallback_Landroid_telecom_CallEventCallback_Handler", ApiSince=34)>]
[<Android.Runtime.RequiresPermission("android.permission.MANAGE_OWN_CALLS")>]
abstract member AddCall : Android.Telecom.CallAttributes * Java.Util.Concurrent.IExecutor * Android.OS.IOutcomeReceiver * Android.Telecom.ICallControlCallback * Android.Telecom.ICallEventCallback -> unit
override this.AddCall : Android.Telecom.CallAttributes * Java.Util.Concurrent.IExecutor * Android.OS.IOutcomeReceiver * Android.Telecom.ICallControlCallback * Android.Telecom.ICallEventCallback -> unit
パラメーター
- callAttributes
- CallAttributes
新しい通話の属性 (着信または発信、アドレスなど)
- executor
- IExecutor
CallControlCallback更新を実行する実行コンテキスト
- pendingControl
- IOutcomeReceiver
addCall トランザクションの結果を受け取ります。 成功すると、追加された呼び出しを切断するなどの処理に使用できる CallControl オブジェクトが提供されます。
- handshakes
- ICallControlCallback
Telecom から <b>actionable</b> の更新を受け取るコールバック。
- events
- ICallEventCallback
Telecom から <b>non</b> アクション可能な更新を受け取るコールバック。
- 属性
注釈
Android システム サービス Telecom への呼び出しを追加します。 これにより、システムは、指定した CallAttributesを使用して着信または発信通話の追跡を開始できます。 通話が追加されたら、android.app.Notification.CallStyle通知を送信し、通話を切断する準備ができたら、CallControl#disconnect(DisconnectCause, Executor, OutcomeReceiver)によって提供されるpendingControl#onResult(CallControl)を使用します。
<b>Call ライフサイクル</b>: 有効な呼び出しがあり、 android.app.Notification.CallStyle 通知を投稿している限り、アプリにはフォアグラウンド実行の優先順位が与えられます。 アプリケーションにフォアグラウンド実行の優先順位が与えられると、アプリはフォアグラウンド サービスとして扱われます。 フォアグラウンド実行の優先順位により、 android.app.ActivityManager がバックグラウンドでアプリケーションを強制実行できなくなります。 アプリのすべての呼び出しが終了するか、アプリが有効な通知を投稿しなくなった場合、フォアグラウンド実行の優先順位はアプリから削除されます。
<b>Note</b>: この API を利用できるのは、 PhoneAccount#CAPABILITY_SUPPORTS_TRANSACTIONAL_OPERATIONS に登録されているパッケージだけです。
PhoneAccount
PhoneAccount#CAPABILITY_SIM_SUBSCRIPTION、PhoneAccount#CAPABILITY_CALL_PROVIDER、PhoneAccount#CAPABILITY_CONNECTION_MANAGERの機能を設定する s はサポートされていないため、例外がスローされます。
<b>Usage example:</b>
// Its up to your app on how you want to wrap the objects. One such implementation can be:
class MyVoipCall {
...
public CallControlCallEventCallback handshakes = new CallControlCallback() {
...
}
public CallEventCallback events = new CallEventCallback() {
...
}
public MyVoipCall(String id){
...
}
}
MyVoipCall myFirstOutgoingCall = new MyVoipCall("1");
telecomManager.addCall(callAttributes,
Runnable::run,
new OutcomeReceiver() {
public void onResult(CallControl callControl) {
// The call has been added successfully. For demonstration
// purposes, the call is disconnected immediately ...
callControl.disconnect(
new DisconnectCause(DisconnectCause.LOCAL) )
}
},
myFirstOutgoingCall.handshakes,
myFirstOutgoingCall.events);
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。