사용자가 필요한 모든 권한을 부여하면 앱에서 주변 기기를 찾을 수 있습니다.
먼저 사용 사례에 맞는 Strategy을 선택합니다.
선택한 Strategy에 따라 앱의 연결 토폴로지 (하나의
광고주를 N명의 발견자로, 또는 M명의 광고주를 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()입니다.