Context.BindService メソッド

定義

オーバーロード

BindService(Intent, IServiceConnection, Bind)

アプリケーション サービスに接続し、必要に応じて作成します。

BindService(Intent, IServiceConnection, Context+BindServiceFlags)
BindService(Intent, Bind, IExecutor, IServiceConnection)

#bindService(Intent, ServiceConnection, int) bindService(Intent, ServiceConnection, int) ServiceConnection コールバックを制御する Executor と同じです。

BindService(Intent, Context+BindServiceFlags, IExecutor, IServiceConnection)

BindService(Intent, IServiceConnection, Bind)

アプリケーション サービスに接続し、必要に応じて作成します。

[Android.Runtime.Register("bindService", "(Landroid/content/Intent;Landroid/content/ServiceConnection;I)Z", "GetBindService_Landroid_content_Intent_Landroid_content_ServiceConnection_IHandler")]
public abstract bool BindService (Android.Content.Intent service, Android.Content.IServiceConnection conn, Android.Content.Bind flags);
[<Android.Runtime.Register("bindService", "(Landroid/content/Intent;Landroid/content/ServiceConnection;I)Z", "GetBindService_Landroid_content_Intent_Landroid_content_ServiceConnection_IHandler")>]
abstract member BindService : Android.Content.Intent * Android.Content.IServiceConnection * Android.Content.Bind -> bool

パラメーター

service
Intent

接続するサービスを識別します。 意図では、明示的なコンポーネント名を指定する必要があります。

conn
IServiceConnection

サービスの開始と停止時に情報を受信します。 これは、有効な ServiceConnection オブジェクトである必要があります。null にすることはできません。

flags
Bind

バインドの操作オプション。 使用できる: <ul><li>0 <li li>#BIND_AUTO_CREATE<li><#BIND_DEBUG_UNBINDli>#BIND_ABOVE_CLIENT<>#BIND_NOT_FOREGROUND<li>#BIND_ALLOW_OOM_MANAGEMENT<li#BIND_WAIVE_PRIORITY>><<#BIND_IMPORTANT#BIND_NOT_PERCEPTIBLE><#BIND_ADJUST_WITH_ACTIVITY<>/ul>#BIND_INCLUDE_CAPABILITIES<>

戻り値

true システムが、クライアントがバインドするアクセス許可を持つサービスを起動中の場合。 false システムがサービスを見つけられなかった場合、またはクライアントにバインドするアクセス許可がない場合は 。 戻り値に関係なく、後で を呼び出 #unbindService して接続を解放する必要があります。

属性

例外

注釈

アプリケーション サービスに接続し、必要に応じて作成します。 これにより、アプリケーションとサービスの間の依存関係が定義されます。 指定された <var>conn</var> は、作成時にサービス オブジェクトを受け取り、終了して再起動した場合に伝えられます。 サービスは、呼び出し元のコンテキストが存在する限り、システムで必要と見なされます。 たとえば、このコンテキストが停止しているアクティビティの場合、アクティビティが再開されるまでサービスの実行を続行する必要はありません。

サービスがバインドをサポートしていない場合は、そのandroid.app.Service#onBind(Intent) onBind()メソッドからが返nullされる可能性があります。 その場合は、 ではなく ServiceConnection の ServiceConnection#onNullBinding(ComponentName) onNullBinding() メソッドが呼び出されます ServiceConnection#onServiceConnected(ComponentName, IBinder) onServiceConnected()

<p class="note"><b>Note:</b> このメソッド <em>はコンポーネントからBroadcastReceiver呼び出すことはできません<>。 BroadcastReceiver から Service への通信に使用できるパターンは、送信するコマンドを含む引数を使用して を呼び出 #startService し、そのコマンドの実行時にサービスがそのメソッドを呼び出 android.app.Service#stopSelf(int) すことです。 この図については、API デモ App/Service/Service Start Arguments Controller を参照してください。 ただし、BroadcastReceiver の有効期間は別のオブジェクト (登録されているオブジェクト) に関連付けられているため、 に登録されている #registerReceiverBroadcastReceiver からこのメソッドを使用しても問題ありません。

このメソッドは、長い型フラグを渡すために int 型フラグのみを受け入れます。代わりに を呼び出します #bindService(Intent, ServiceConnection, BindServiceFlags)

の Java ドキュメント android.content.Context.bindService(android.content.Intent, android.content.ServiceConnection, int)

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

こちらもご覧ください

適用対象

BindService(Intent, IServiceConnection, Context+BindServiceFlags)

[Android.Runtime.Register("bindService", "(Landroid/content/Intent;Landroid/content/ServiceConnection;Landroid/content/Context$BindServiceFlags;)Z", "GetBindService_Landroid_content_Intent_Landroid_content_ServiceConnection_Landroid_content_Context_BindServiceFlags_Handler", ApiSince=34)]
public virtual bool BindService (Android.Content.Intent service, Android.Content.IServiceConnection conn, Android.Content.Context.BindServiceFlags flags);
[<Android.Runtime.Register("bindService", "(Landroid/content/Intent;Landroid/content/ServiceConnection;Landroid/content/Context$BindServiceFlags;)Z", "GetBindService_Landroid_content_Intent_Landroid_content_ServiceConnection_Landroid_content_Context_BindServiceFlags_Handler", ApiSince=34)>]
abstract member BindService : Android.Content.Intent * Android.Content.IServiceConnection * Android.Content.Context.BindServiceFlags -> bool
override this.BindService : Android.Content.Intent * Android.Content.IServiceConnection * Android.Content.Context.BindServiceFlags -> bool

パラメーター

service
Intent

戻り値

属性

適用対象

BindService(Intent, Bind, IExecutor, IServiceConnection)

#bindService(Intent, ServiceConnection, int) bindService(Intent, ServiceConnection, int) ServiceConnection コールバックを制御する Executor と同じです。

[Android.Runtime.Register("bindService", "(Landroid/content/Intent;ILjava/util/concurrent/Executor;Landroid/content/ServiceConnection;)Z", "GetBindService_Landroid_content_Intent_ILjava_util_concurrent_Executor_Landroid_content_ServiceConnection_Handler", ApiSince=29)]
public virtual bool BindService (Android.Content.Intent service, Android.Content.Bind flags, Java.Util.Concurrent.IExecutor executor, Android.Content.IServiceConnection conn);
[<Android.Runtime.Register("bindService", "(Landroid/content/Intent;ILjava/util/concurrent/Executor;Landroid/content/ServiceConnection;)Z", "GetBindService_Landroid_content_Intent_ILjava_util_concurrent_Executor_Landroid_content_ServiceConnection_Handler", ApiSince=29)>]
abstract member BindService : Android.Content.Intent * Android.Content.Bind * Java.Util.Concurrent.IExecutor * Android.Content.IServiceConnection -> bool
override this.BindService : Android.Content.Intent * Android.Content.Bind * Java.Util.Concurrent.IExecutor * Android.Content.IServiceConnection -> bool

パラメーター

service
Intent
flags
Bind
executor
IExecutor

ServiceConnection のコールバックは、Executor で呼び出されます。 ServiceConnection の同じインスタンスに対して同じインスタンスを使用する必要があります。

戻り値

で説明されているバインディングの #bindService(Intent, ServiceConnection, int) bindService(Intent, ServiceConnection, int)結果。

属性

注釈

#bindService(Intent, ServiceConnection, int) bindService(Intent, ServiceConnection, int) ServiceConnection コールバックを制御する Executor と同じです。

このメソッドは、64 ビット フラグを渡すために 32 ビット フラグのみを受け入れます。代わりに を呼び出します #bindService(Intent, BindServiceFlags, Executor, ServiceConnection)

の Java ドキュメント android.content.Context.bindService(android.content.Intent, int, java.util.concurrent.Executor, android.content.ServiceConnection)

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

適用対象

BindService(Intent, Context+BindServiceFlags, IExecutor, IServiceConnection)

[Android.Runtime.Register("bindService", "(Landroid/content/Intent;Landroid/content/Context$BindServiceFlags;Ljava/util/concurrent/Executor;Landroid/content/ServiceConnection;)Z", "GetBindService_Landroid_content_Intent_Landroid_content_Context_BindServiceFlags_Ljava_util_concurrent_Executor_Landroid_content_ServiceConnection_Handler", ApiSince=34)]
public virtual bool BindService (Android.Content.Intent service, Android.Content.Context.BindServiceFlags flags, Java.Util.Concurrent.IExecutor executor, Android.Content.IServiceConnection conn);
[<Android.Runtime.Register("bindService", "(Landroid/content/Intent;Landroid/content/Context$BindServiceFlags;Ljava/util/concurrent/Executor;Landroid/content/ServiceConnection;)Z", "GetBindService_Landroid_content_Intent_Landroid_content_Context_BindServiceFlags_Ljava_util_concurrent_Executor_Landroid_content_ServiceConnection_Handler", ApiSince=34)>]
abstract member BindService : Android.Content.Intent * Android.Content.Context.BindServiceFlags * Java.Util.Concurrent.IExecutor * Android.Content.IServiceConnection -> bool
override this.BindService : Android.Content.Intent * Android.Content.Context.BindServiceFlags * Java.Util.Concurrent.IExecutor * Android.Content.IServiceConnection -> bool

パラメーター

service
Intent
executor
IExecutor

戻り値

属性

適用対象