если кто-то может помочь, я следую за строкой кода в каждой строке точно так же, как в этом уроке Uber, и когда я запускаю приложение, я получаю эту ошибку:
NoSuchMethodError: Нет виртуального метода removeValueAsync () ...
Я не могу придумать, как решить проблему.
Я проверил свои gradle
зависимости, и все, кажется, в порядке, но может 'Я не могу избавиться от этой ошибки, независимо от того, что я делаю ...
Если кто-то может пролить свет на то, что мы велики.
Может быть, ошибка зиготы, я не знаю.
Это строка прямо под 'case' ':'
Заранее спасибо!
private void onLocationChanged(Location location) {
if (getApplicationContext() != null){
mLastLocation = location;
LatLng latLng = new LatLng(location.getLatitude(), location.getLongitude());
mMap.moveCamera(CameraUpdateFactory.newLatLng(latLng));
mMap.animateCamera(CameraUpdateFactory.zoomTo(14));
String userId = FirebaseAuth.getInstance().getCurrentUser().getUid();
DatabaseReference refAvailable = FirebaseDatabase.getInstance().getReference("driversAvailable");
DatabaseReference refWorking = FirebaseDatabase.getInstance().getReference("driversWorking");
GeoFire geoFireAvailable = new GeoFire(refAvailable);
GeoFire geoFireWorking = new GeoFire(refWorking);
switch (customerId){
case "":
geoFireWorking.removeLocation(userId);
geoFireAvailable.setLocation(userId, new GeoLocation(location.getLatitude(), location.getLongitude()));
break;
default:
geoFireAvailable.removeLocation(userId);
geoFireWorking.setLocation(userId, new GeoLocation(location.getLatitude(), location.getLongitude()));
break;
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'com.google.android.gms:play-services-maps:17.0.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test:runner:1.2.0'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
implementation 'com.google.firebase:firebase-analytics:17.2.0'
implementation 'com.google.firebase:firebase-auth:19.0.0'
implementation 'com.google.firebase:firebase-database:19.1.0'
implementation 'com.firebase:geofire-java:3.0.0'
implementation 'com.google.android.gms:play-services-location:17.0.0'
implementation 'com.firebase:geofire-java:3.0.0'
}
LOGCAT:
E / AndroidRuntime: FATAL EXCEPTION: main Процесс: com.e.uber, PID: 31292 java.lang.NoSuchMethodError: Нет виртуального метода setValueAsync (Ljava / lang / Object; Ljava / lang / Object;) Lcom / google / api / core / ApiFuture;в классе Lcom / google / firebase / database / DatabaseReference;или его суперклассы (объявление com.google.firebase.database.DatabaseReference 'отображается в /data/app/com.e.uber-0-WjkWsr0B0ZTV9sQ3Dsgg==/base.apk) на com.firebase.geofire.GeoFire.setLocation (GeoFire.java:178) в com.firebase.geofire.GeoFire.setLocation (GeoFire.java:149) в com.e.uber.DriverMapActivity.onLocationChanged (DriverMapActivity.java:177) в com.e.uber.DriM.access $ 300 (DriverMapActivity.java:47) на com.e.uber.DriverMapActivity $ 4.onLocationResult (DriverMapActivity.java:155) на com.google.android.gms.internal.location.zzau.notifyListener (неизвестный источник: 4)на com.google.android.gms.common.api.internal.ListenerHolder.notifyListenerInternal (com.google.android.gms: play-services-base @@ 17.1.0: 17) на com.google.android.gms.common..api.internal.ListenerHolder $ zaa.handleMessage (com.google.android.gms: play-services-base @@ 17.1.0: 6) по адресу android.os.Handler.dispatchMessage (Handler.java:112) по тел.google.android.gms.internal.base.zar.dispatchMessage (com.google.android.gms: Play-сервисная база @@ 17.1.0: 8) на android.os.Looper.loop (Looper.java:216) на android.app.ActivityThread.main (ActivityThread.java:7625) на java.lang.reflect.Method.invoke (собственный метод) по адресу com.android.internal.os.RuntimeInit $ MethodAndArgsCaller.run (RuntimeInit.java:524) по адресу com.android.internal.os.ZygoteInit.main (ZygoteInit.java:987)