Класс GNSStrategy
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Стратегия, используемая для обнаружения близлежащих устройств.
Наследует NSObject.
|
(instancetype) | + strategy |
| Возвращает стратегию по умолчанию, которая использует значения по умолчанию для всех свойств. Более...
|
|
(instancetype) | + strategyWithParamsBlock: |
| Возвращает пользовательскую стратегию. Вы можете установить любое из необязательных свойств в paramsBlock . Более...
|
|
|
GNSDiscoveryMode | discoveryMode |
| Для обнаружения близлежащих устройств одно устройство должно передать код сопряжения, а другое устройство должно выполнить поиск кодов сопряжения. Более...
|
|
GNSDiscoveryMediums | discoveryMediums |
| Определяет, какие средства использовать для трансляции и сканирования кодов сопряжения при обнаружении близлежащих устройств. Более...
|
|
BOOL | allowInBackground |
| Попробуйте использовать стратегию обнаружения, когда приложение находится в фоновом режиме. Более...
|
|
+ (instancetype) strategy |
|
|
|
Возвращает стратегию по умолчанию, которая использует значения по умолчанию для всех свойств.
+ (instancetype) strategyWithParamsBlock: |
|
(void(^)( GNSStrategyParams *)) |
paramsBlock |
|
Возвращает пользовательскую стратегию. Вы можете установить любое из необязательных свойств в paramsBlock
.
- (GNSDiscoveryMode) discoveryMode |
|
read nonatomic assign |
Для обнаружения близлежащих устройств одно устройство должно передать код сопряжения, а другое устройство должно выполнить поиск кодов сопряжения.
Поскольку нет возможности заранее договориться, по умолчанию все устройства выполняют как трансляцию, так и сканирование.
Это свойство позволяет вам настроить это поведение, ограничивая ваше приложение трансляцией или сканированием. Например, рассмотрим мобильное приложение, которое взаимодействует с телеприставкой. Если приставка запрограммирована на передачу кода сопряжения, мобильное приложение можно настроить только на сканирование, чтобы уменьшить задержку.
По умолчанию используется kGNSDiscoveryModeDefault
.
- (GNSDiscoveryMediums) discoveryMediums |
|
read nonatomic assign |
Определяет, какие средства использовать для трансляции и сканирования кодов сопряжения при обнаружении близлежащих устройств.
Дополнительную информацию об обнаружении устройств см. в разделе discoveryMode
.
По умолчанию используется kGNSDiscoveryMediumsDefault
.
- (BOOL) allowInBackground |
|
read nonatomic assign |
Попробуйте использовать стратегию обнаружения, когда приложение находится в фоновом режиме.
Обратите внимание, что не всем стратегиям будет разрешено работать в фоновом режиме. Вы можете запросить это здесь, и в зависимости от других настроек и обстоятельств стратегии может быть разрешено продолжить работу в фоновом режиме. В настоящее время поддерживаются только сканирования/трансляции BLE.
Значение по умолчанию — NO
.
Если не указано иное, контент на этой странице предоставляется по лицензии Creative Commons "С указанием авторства 4.0", а примеры кода – по лицензии Apache 2.0. Подробнее об этом написано в правилах сайта. Java – это зарегистрированный товарный знак корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-08-13 UTC.
[null,null,["Последнее обновление: 2025-08-13 UTC."],[[["\u003cp\u003eThe \u003ccode\u003eGNSStrategy\u003c/code\u003e class defines the approach for discovering nearby devices, encompassing discovery mode, mediums, and background operation.\u003c/p\u003e\n"],["\u003cp\u003eYou can obtain a default strategy with preset configurations or customize a strategy by specifying properties using a params block.\u003c/p\u003e\n"],["\u003cp\u003eFor device discovery, one device broadcasts a pairing code, and the other scans; you can customize this behavior by setting the \u003ccode\u003ediscoveryMode\u003c/code\u003e property.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003ediscoveryMediums\u003c/code\u003e property allows controlling the communication channels (e.g., Bluetooth, ultrasound) used for discovering nearby devices.\u003c/p\u003e\n"],["\u003cp\u003eWhile the default setting disallows background operation, you can request background execution for the discovery strategy using \u003ccode\u003eallowInBackground\u003c/code\u003e, although it's not always guaranteed.\u003c/p\u003e\n"]]],[],null,["# GNSStrategy Class\n\n[Class Methods](#pub-static-methods) \\| [Properties](#properties) \nGNSStrategy Class Reference \n\nOverview\n--------\n\nThe strategy to use to detect nearby devices.\n\nInherits NSObject.\n\n|----------------|---------------------------------------------------------------------------------------------------------------------------------------|\n| Class Method Summary -------------------- ||\n| (instancetype) | + [strategy](/nearby/messages/ios/reference/interface_g_n_s_strategy#afc67e9c07852a35945a13998bac050ed) |\n| | Returns the default strategy, which uses the default values for all properties. [More...](#afc67e9c07852a35945a13998bac050ed) |\n| ||\n| (instancetype) | + [strategyWithParamsBlock:](/nearby/messages/ios/reference/interface_g_n_s_strategy#af97d06481398cf1e5d7f2f8b54026966) |\n| | Returns a custom strategy. You can set any of the optional properties in `paramsBlock`. [More...](#af97d06481398cf1e5d7f2f8b54026966) |\n| ||\n\n|---------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| Property Summary ---------------- ||\n| GNSDiscoveryMode | [discoveryMode](/nearby/messages/ios/reference/interface_g_n_s_strategy#ad10088af20c44daa2d29f9099b9d6422) |\n| | For nearby device discovery, one device must broadcast a pairing code and the other device must scan for pairing codes. [More...](#ad10088af20c44daa2d29f9099b9d6422) |\n| ||\n| GNSDiscoveryMediums | [discoveryMediums](/nearby/messages/ios/reference/interface_g_n_s_strategy#ad9b6ae317c7ba8ba3ca9da28f831ae0a) |\n| | Controls which mediums to use to broadcast and scan pairing codes when discovering nearby devices. [More...](#ad9b6ae317c7ba8ba3ca9da28f831ae0a) |\n| ||\n| BOOL | [allowInBackground](/nearby/messages/ios/reference/interface_g_n_s_strategy#a4794a869b9225cca308c30e40905f39c) |\n| | Try to use the discovery strategy when the app is in the background. [More...](#a4794a869b9225cca308c30e40905f39c) |\n| ||\n\nMethod Detail\n-------------\n\n|---------------------------|---|---|---|\n| + (instancetype) strategy | | | |\n\nReturns the default strategy, which uses the default values for all properties. \n\n|-------------------------------------------|---|----------------------------------------------------------------------------------------------------|---------------|---|\n| + (instancetype) strategyWithParamsBlock: | | (void(\\^)([GNSStrategyParams](/nearby/messages/ios/reference/interface_g_n_s_strategy_params) \\*)) | *paramsBlock* | |\n\nReturns a custom strategy. You can set any of the optional properties in `paramsBlock`.\n\nProperty Detail\n---------------\n\n|-------------------------------------------------------------------------------|---------------------|\n| |------------------------------------| | - (GNSDiscoveryMode) discoveryMode | | readnonatomicassign |\n\nFor nearby device discovery, one device must broadcast a pairing code and the other device must scan for pairing codes.\n\nBecause there is no way to negotiate beforehand, the default is for all devices to both broadcast and scan.\n\nThis property lets you customize this behavior, restricting your app to either broadcast or scan. For example, consider a mobile app that communicates with a set-top box. If the set-top box is programmed to broadcast a pairing code, the mobile app could be set to scan only, to improve latency.\n\nThe default is `kGNSDiscoveryModeDefault`. \n\n|-------------------------------------------------------------------------------------------|---------------------|\n| |------------------------------------------| | - (GNSDiscoveryMediums) discoveryMediums | | readnonatomicassign |\n\nControls which mediums to use to broadcast and scan pairing codes when discovering nearby devices.\n\nSee `discoveryMode` for more details about device discovery.\n\nThe default is `kGNSDiscoveryMediumsDefault`. \n\n|---------------------------------------------------------------|---------------------|\n| |----------------------------| | - (BOOL) allowInBackground | | readnonatomicassign |\n\nTry to use the discovery strategy when the app is in the background.\n\nNote that not all strategies will be permitted to run in the background. You can request this here, and depending on other settings and circumstances, the strategy might be allowed to continue in the background. Currently only BLE scans/broadcasts are supported.\n\nThe default is `NO`."]]