Context.BindService Метод

Определение

Перегрузки

Имя Описание
BindService(Intent, IServiceConnection, Bind)

Подключается к службе приложений, создавая ее при необходимости.

BindService(Intent, IServiceConnection, Context+BindServiceFlags)

См. раздел bindService(Intent,ServiceConnection,int) Call BindServiceFlags.of(long) для получения объекта BindServiceFlags.

BindService(Intent, Bind, IExecutor, IServiceConnection)

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

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

Сведения о получении объекта BindServiceFlags см. в разделе 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<>#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_INCLUDE_CAPABILITIES< li/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 Примечание.>/b<> Этот метод <em>не может< быть> вызван из BroadcastReceiver компонента. Шаблон, который можно использовать для обмена данными из broadcastReceiver в службу, заключается в вызове #startService с аргументами, содержащими команду для отправки, с службой, вызывающей метод android.app.Service#stopSelf(int) при выполнении этой команды. Пример этого см. в демонстрационном контроллере аргументов приложения или службы или службы. Однако это нормально, чтобы использовать этот метод из широковещательнойreceiver, зарегистрированной в #registerReceiver, с момента существования этого широковещательногоreceiver привязан к другому объекту (зарегистрированному в нем).

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

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

Части этой страницы — это изменения на основе работы, созданной и общей Project и используемых в соответствии с условиями, описанными в разделе "".

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

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

BindService(Intent, IServiceConnection, Context+BindServiceFlags)

См. раздел bindService(Intent,ServiceConnection,int) Call BindServiceFlags.of(long) для получения объекта 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

Это значение не может иметь значение NULL.

conn
IServiceConnection

Это значение не может иметь значение NULL.

flags
Context.BindServiceFlags

Это значение не может иметь значение NULL.

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

См. раздел bindService(Intent,ServiceConnection,int) Call BindServiceFlags.of(long) для получения объекта BindServiceFlags.

Атрибуты

Комментарии

См. раздел bindService(Intent,ServiceConnection,int) Call BindServiceFlags.of(long) для получения объекта BindServiceFlags.

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

Части этой страницы — это изменения на основе работы, созданной и общей Project и используемых в соответствии с условиями, описанными в разделе "".

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

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

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

conn
IServiceConnection

Это значение не может иметь значение NULL.

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

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

Атрибуты

Комментарии

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

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

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

Части этой страницы — это изменения на основе работы, созданной и общей Project и используемых в соответствии с условиями, описанными в разделе "".

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

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

Сведения о получении объекта BindServiceFlags см. в разделе 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. События обратного вызова и прослушивателя отправляются с помощью этого исполнителя, предоставляя простой способ управления используемым потоком. Для отправки событий через основной поток приложения можно использовать Context.getMainExecutor(). В противном случае укажите исполнителя, который отправляется в соответствующий поток.

conn
IServiceConnection

Это значение не может иметь значение NULL.

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

Сведения о получении объекта BindServiceFlags см. в разделе bindService(Intent,int,Executor,ServiceConnection) Call BindServiceFlags.of(long) для получения объекта BindServiceFlags.

Атрибуты

Комментарии

Сведения о получении объекта BindServiceFlags см. в разделе bindService(Intent,int,Executor,ServiceConnection) Call BindServiceFlags.of(long) для получения объекта BindServiceFlags.

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

Части этой страницы — это изменения на основе работы, созданной и общей Project и используемых в соответствии с условиями, описанными в разделе "".

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