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>アクション可能</b> 更新を受け取る<コールバック。
- events
- ICallEventCallback
Telecom から生成された b>の非<アクション>可能な更新を受け取る<コールバック。
- 属性
注釈
Android システム サービス Telecom への呼び出しを追加します。 これにより、システムは、指定した CallAttributes
を使用して着信または発信呼び出しの追跡を開始できます。 呼び出しを切断する準備ができたら、 によって提供される を CallControl#disconnect(DisconnectCause, Executor, OutcomeReceiver)
使用します pendingControl#onResult(CallControl)
。
<b>通話ライフサイクル</b>: 有効な呼び出しがあり、通知を投稿 android.app.Notification.CallStyle
している限り、アプリにはフォアグラウンド実行の優先度が与えられます。 アプリケーションにフォアグラウンド実行の優先順位が与えられると、アプリはフォアグラウンド サービスとして扱われます。 フォアグラウンド実行の優先度では、 が android.app.ActivityManager
バックグラウンドに配置されたときに、 によってアプリケーションが強制終了されるのを防ぐことができます。 フォアグラウンド実行の優先度は、アプリのすべての呼び出しが終了するか、アプリが有効な通知を投稿しなくなったときに、アプリから削除されます。
<b>注</b>: この API を利用できるのは、 に PhoneAccount#CAPABILITY_SUPPORTS_TRANSACTIONAL_OPERATIONS
登録されているパッケージのみです。 PhoneAccount
機能PhoneAccount#CAPABILITY_SIM_SUBSCRIPTION
PhoneAccount#CAPABILITY_CALL_PROVIDER
PhoneAccount#CAPABILITY_CONNECTION_MANAGER
を設定する s はサポートされていないため、例外がスローされます。
<b>使用例:</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);
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。