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.

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<>#BIND_AUTO_CREATEli li>#BIND_DEBUG_UNBIND<li#BIND_NOT_FOREGROUND><li>#BIND_ABOVE_CLIENT<li li><#BIND_ALLOW_OOM_MANAGEMENTli>#BIND_WAIVE_PRIORITY<li><#BIND_IMPORTANTli li><#BIND_ADJUST_WITH_ACTIVITYli#BIND_NOT_PERCEPTIBLE<>li li li/ul>#BIND_INCLUDE_CAPABILITIES<>

Возвращаемое значение

true если система находится в процессе создания службы, к которым у клиента есть разрешение на привязку; false Значение , если системе не удалось найти службу или если у клиента нет разрешения на привязку к ней. Независимо от возвращаемого значения, позже следует вызвать метод #unbindService , чтобы освободить подключение.

Атрибуты

Исключения

Комментарии

Подключается к службе приложений, создавая ее при необходимости. Это определяет зависимость между приложением и службой. Данный <объект var>conn</var> получит объект службы при его создании и получит сообщение о том, что он умирает и перезапускается. Служба будет считаться требуемой системой только до тех пор, пока существует вызывающий контекст. Например, если этот контекст является остановленным действием, службе не потребуется продолжать работу, пока действие не будет возобновлено.

Если служба не поддерживает привязку, она может возвращать данные null из своего android.app.Service#onBind(Intent) onBind() метода. Если это так, метод ServiceConnection ServiceConnection#onNullBinding(ComponentName) onNullBinding() будет вызван вместо ServiceConnection#onServiceConnected(ComponentName, IBinder) onServiceConnected().

<p class="note"><b>Примечание:</b> Этот метод <em>не может<> быть вызван из BroadcastReceiver компонента. Шаблон, который можно использовать для взаимодействия из BroadcastReceiver со службой, заключается в вызове #startService с аргументами, содержащими отправляемую команду, при этом служба вызывает свой android.app.Service#stopSelf(int) метод при выполнении этой команды. Пример см. в демонстрации API Контроллер начальных аргументов приложения, службы и службы. Однако можно использовать этот метод из BroadcastReceiver, зарегистрированного в #registerReceiver, так как время существования этого broadcastReceiver привязано к другому объекту (тому, который его зарегистрировал).

Этот метод принимает только флаг типа int, вместо этого для передачи флага длинного типа вызывается #bindService(Intent, ServiceConnection, BindServiceFlags) .

Документация по Java для android.content.Context.bindService(android.content.Intent, android.content.ServiceConnection, int).

Части этой страницы являются изменениями, основанными на работе, созданной и совместно используемой проектом Android и используемой в соответствии с условиями, Creative Commons 2.5 Attribution License.

См. также раздел

Применяется к

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.

[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 будут вызываться для исполнителя. Должен использовать один и тот же экземпляр ServiceConnection.

Возвращаемое значение

Результат привязки, как описано в #bindService(Intent, ServiceConnection, int) bindService(Intent, ServiceConnection, int).

Атрибуты

Комментарии

То же, что и #bindService(Intent, ServiceConnection, int) bindService(Intent, ServiceConnection, int) при использовании исполнителя для управления обратными вызовами ServiceConnection.

Этот метод принимает только 32-разрядный флаг, вместо этого вызовите для передачи флага #bindService(Intent, BindServiceFlags, Executor, ServiceConnection) 64 бит.

Документация по Java для android.content.Context.bindService(android.content.Intent, int, java.util.concurrent.Executor, android.content.ServiceConnection).

Части этой страницы являются изменениями, основанными на работе, созданной и совместно используемой проектом Android и используемой в соответствии с условиями, Creative Commons 2.5 Attribution License.

Применяется к

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

Возвращаемое значение

Атрибуты

Применяется к