言語

Context.BindService メソッド

定義

オーバーロード

名前 説明
BindService(Intent, IServiceConnection, Bind)

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

BindService(Intent, IServiceConnection, Context+BindServiceFlags)

BindServiceFlags オブジェクトを取得するには、bindService(Intent,ServiceConnection,int) Call BindServiceFlags.of(long) を参照してください。

BindService(Intent, Bind, IExecutor, IServiceConnection)

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

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

BindService(Intent,int,Executor,ServiceConnection) Call BindServiceFlags.of(long) を参照して BindServiceFlags オブジェクトを取得します。

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>#BIND_AUTO_CREATE<li>#BIND_DEBUG_UNBIND<li>#BIND_NOT_FOREGROUND<li>#BIND_ABOVE_CLIENT<>#BIND_ALLOW_OOM_MANAGEMENT<li>#BIND_WAIVE_PRIORITY<li>#BIND_IMPORTANT<li>#BIND_ADJUST_WITH_ACTIVITY<li>#BIND_NOT_PERCEPTIBLE<li>#BIND_INCLUDE_CAPABILITIES</ul>

返品

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

属性

例外

注釈

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

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

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

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

Javaドキュメント。

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

こちらもご覧ください

適用対象

BindService(Intent, IServiceConnection, Context+BindServiceFlags)

BindServiceFlags オブジェクトを取得するには、bindService(Intent,ServiceConnection,int) Call BindServiceFlags.of(long) を参照してください。

[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

この値を null にすることはできません。

conn
IServiceConnection

この値を null にすることはできません。

flags
Context.BindServiceFlags

この値を null にすることはできません。

返品

BindServiceFlags オブジェクトを取得するには、bindService(Intent,ServiceConnection,int) Call BindServiceFlags.of(long) を参照してください。

属性

注釈

BindServiceFlags オブジェクトを取得するには、bindService(Intent,ServiceConnection,int) Call BindServiceFlags.of(long) を参照してください。

Javaドキュメント。

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

適用対象

BindService(Intent, Bind, IExecutor, IServiceConnection)

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

[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

この値を null にすることはできません。

flags
Bind

値は 0 または次の組み合わせです:BIND_AUTO_CREATE BIND_DEBUG_UNBIND BIND_NOT_FOREGROUND BIND_ABOVE_CLIENT BIND_ALLOW_OOM_MANAGEMENT BIND_WAIVE_PRIORITY BIND_IMPORTANT BIND_ADJUST_WITH_ACTIVITY BIND_NOT_PERCEPTIBLE BIND_ALLOW_ACTIVITY_STARTS BIND_INCLUDE_CAPABILITIES BIND_SHARED_ISOLATED_PROCESS BIND_PACKAGE_ISOLATED_PROCESS BIND_EXTERNAL_SERVICE

executor
IExecutor

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

conn
IServiceConnection

この値を null にすることはできません。

返品

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

属性

注釈

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

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

Javaドキュメント。

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

適用対象

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

BindService(Intent,int,Executor,ServiceConnection) Call BindServiceFlags.of(long) を参照して BindServiceFlags オブジェクトを取得します。

[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

この値を null にすることはできません。

flags
Context.BindServiceFlags

この値を null にすることはできません。

executor
IExecutor

この値を null にすることはできません。 コールバック イベントとリスナー イベントは、この Executor を介してディスパッチされ、使用するスレッドを簡単に制御できます。 アプリケーションのメイン スレッドを介してイベントをディスパッチするには、Context.getMainExecutor() を使用します。 それ以外の場合は、適切なスレッドにディスパッチする Executor を指定します。

conn
IServiceConnection

この値を null にすることはできません。

返品

BindService(Intent,int,Executor,ServiceConnection) Call BindServiceFlags.of(long) を参照して BindServiceFlags オブジェクトを取得します。

属性

注釈

BindService(Intent,int,Executor,ServiceConnection) Call BindServiceFlags.of(long) を参照して BindServiceFlags オブジェクトを取得します。

Javaドキュメント。

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

適用対象