使用者授予所有必要權限後,應用程式即可開始 廣播和探索,尋找附近的裝置。
首先,請根據您的用途選擇 Strategy
。
您選取的 Strategy
會決定應用程式的連線拓撲 (單一
廣告客戶對 N 位探索者)。
在要放送廣告的裝置上,使用想要放送廣告的裝置呼叫 startAdvertising()
Strategy
和用於識別應用程式的 serviceId
參數。
在可搜尋附近廣告主的裝置上,呼叫 startDiscovery()
並填入
相同的 Strategy
和 serviceId
。
serviceId
值必須明確識別應用程式。最佳做法是
應用程式的套件名稱 (例如 com.google.example.myapp
)。
以下範例說明如何宣傳:
private void startAdvertising() { AdvertisingOptions advertisingOptions = new AdvertisingOptions.Builder().setStrategy(STRATEGY).build(); Nearby.getConnectionsClient(context) .startAdvertising( getLocalUserName(), SERVICE_ID, connectionLifecycleCallback, advertisingOptions) .addOnSuccessListener( (Void unused) -> { // We're advertising! }) .addOnFailureListener( (Exception e) -> { // We were unable to start advertising. }); }
ConnectionLifecycleCallback
參數是系統將叫用的回呼
當探索者要求與廣告客戶建立關係時。詳情請參閱管理
連結:
定義這個回呼。
以下範例說明如何探索:
private void startDiscovery() { DiscoveryOptions discoveryOptions = new DiscoveryOptions.Builder().setStrategy(STRATEGY).build(); Nearby.getConnectionsClient(context) .startDiscovery(SERVICE_ID, endpointDiscoveryCallback, discoveryOptions) .addOnSuccessListener( (Void unused) -> { // We're discovering! }) .addOnFailureListener( (Exception e) -> { // We're unable to start discovering. }); }
EndpointDiscoveryCallback
參數是系統將叫用的回呼
使用者找到或遺失附近的廣告主時。詳情請參閱管理
連結:
定義這個回呼。
不再需要宣傳時,請呼叫 stopAdvertising()
。
再也不必費心探索。stopDiscovery()