Hub Activation API (API Kích hoạt trung tâm) cho phép bạn khám phá và kích hoạt trung tâm Google Home theo phương pháp có lập trình. Tính năng này đặc biệt hữu ích khi người dùng không có cách nào khác để kích hoạt một trung tâm, chẳng hạn như trong trường hợp trung tâm không có màn hình.
Sử dụng Hub Activation API
Bằng cách sử dụng Hub Activation API, bạn có thể tạo một ứng dụng có khả năng phát hiện và kích hoạt các trung tâm.
Tạo một tham chiếu đến
HubManagementTraittrong cấu trúc:val hubManagementTrait = hubManagementTraitFlow.firstOrNull { it.metadata.sourceConnectivity?.connectivityState == ConnectivityState.ONLINE } if (hubManagementTrait == null) { errorsEmitter.emit(HomeException.notFound("HubManagement trait isn't online")) }Xác định mọi thiết bị có thể kết nối với trung tâm trên mạng Wi-Fi:
try { val unused = hubManagementTrait.discoverAvailableHubs() } catch (e: Exception) { Log.d(TAG_HUB_DISCOVERY, "Error discovering hubs $e") errorsEmitter.emit(e) } val hubManagementTraitFlow = structureFlow.flatMapLatest { it.trait(HubManagement) } val discoveredHubs = hubManagementTraitFlow .map { it.discoveredHubsList } .handleErrors() .flowOn(ioDispatcher) .stateIn( scope = CoroutineScope(viewModelScope.coroutineContext + ioDispatcher), started = SharingStarted.WhileSubscribed(), listOf(), )Kích hoạt một thiết bị có chức năng trung tâm:
try { val unused = hubManagementTrait.activateHub(hub) } catch (e: Exception) { Log.d("Hub Activation", "Error activating hub $e") }