public String BeaconValue() {
ProximityObserver proximityObserver =
new ProximityObserverBuilder(mContext, ((MyApplication) mContext).cloudCredentials)
.onError(new Function1<Throwable, Unit>() {
@Override
public Unit invoke(Throwable throwable) {
Log.e("desks", "proximity observer error: " + throwable);
return null;
}
})
.withBalancedPowerMode()
.build();
ProximityZone zone = new ProximityZoneBuilder()
.forTag("desks")
.inNearRange()
.onEnter(new Function1<ProximityZoneContext, Unit>() {
@Override
public Unit invoke(ProximityZoneContext proximityZoneContext) {
NotificationsManager.this.beaconValue = proximityZoneContext.getAttachments().get("desk-owner");
return null;;
}
})
.build();
proximityObserver.startObserving(zone);
return this.beaconValue;
}
// Getting the beacon attachment value string
public String getBeaconValue() {
beaconValue = BeaconValue(beaconValue);
return beaconValue;
}
так что это код здесь, в настоящее время у меня есть Unit, но после некоторого исследования я обнаружил, что Unit неявный, поэтому ему не нужно ничего возвращать, и он действительно ничего не возвращает. Однако я хочу вернуть beaconValue в этой функции, поэтому я создал эту новую функцию для получения неявного модуля из функции beaconvalue, он не работает. Интересно, почему. (Я пытался изменить Единицу на Строку, но это не тот способ, которым она выдает ошибку. Так как при вводе не поддерживается Строка (Java)) Спасибо.
обновлено.