হাব অ্যাক্টিভেশন এপিআই আপনাকে প্রোগ্রাম্যাটিকভাবে একটি গুগল হোম হাব আবিষ্কার এবং সক্রিয় করতে দেয়। এটি বিশেষ করে কার্যকর যখন ব্যবহারকারীর কাছে হাব সক্রিয় করার অন্য কোনও উপায় থাকে না, যেমন একটি হাবের ক্ষেত্রে যেখানে স্ক্রিন নেই।
হাব অ্যাক্টিভেশন এপিআই ব্যবহার করুন
হাব অ্যাক্টিভেশন এপিআই ব্যবহার করে, আপনি এমন একটি অ্যাপ তৈরি করতে পারেন যা হাবগুলি আবিষ্কার এবং সক্রিয় করতে পারে।
কাঠামোতে
HubManagementTraitএর একটি রেফারেন্স পান:val hubManagementTrait = hubManagementTraitFlow.firstOrNull { it.metadata.sourceConnectivity?.connectivityState == ConnectivityState.ONLINE } if (hubManagementTrait == null) { errorsEmitter.emit(HomeException.notFound("HubManagement trait isn't online")) }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(), )একটি হাব-সক্ষম ডিভাইস সক্রিয় করুন:
try { val unused = hubManagementTrait.activateHub(hub) } catch (e: Exception) { Log.d("Hub Activation", "Error activating hub $e") }