Meine Datenbank sieht wie folgt aus:Abrufen von Daten aus Firebase in Android
Der Code meiner Tätigkeit ist dies:
public class FirebaseActivity extends AppCompatActivity {
ListView lv;
private FirebaseDatabase database;
private DatabaseReference myRef;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_firebase);
final List<String> glocations = new ArrayList<String>();
lv = (ListView) findViewById(R.id.lv);
database = FirebaseDatabase.getInstance();
myRef = database.getReference();
myRef.child("Users").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Iterable<DataSnapshot> children = dataSnapshot.getChildren();
for (DataSnapshot child: children){
String data = child.getValue(String.class);
glocations.add(data);
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,glocations);
lv.setAdapter(adapter);
}
}
Nun, wenn ich versuche, die Aktivität von den Einstellungen zu öffnen Menü auf der Hauptaktivität stürzt meine Anwendung ab. Alles was ich tun möchte, ist die Latitude, die Längengrad und die Zeitstempel anzuzeigen, jedes Mal wenn der Benutzer sie in einer Listenansicht ändert, indem er eine einfache Liste mit dem Array-Adapter verwendet. Dies ist eine andere Aktivität und nicht die Hauptaktivität. Der wichtigste funktioniert perfekt. Ich habe unzählige Videos gesehen und kann meinen Fehler nicht verstehen.
Der Fehler ich von logcat bekommen, ist dieses
FATAL EXCEPTION: main Process: com.thanoszoug.geofenceexample, PID: 9954 com.google.firebase.database.DatabaseException: Failed to convert value of type java.util.HashMap to String at com.google.android.gms.internal.zzbqi.zzaD(Unknown Source) at com.google.android.gms.internal.zzbqi.zzb(Unknown Source) at com.google.android.gms.internal.zzbqi.zza(Unknown Source) at com.google.firebase.database.DataSnapshot.getValue(Unknown Source) at com.thanoszoug.geofenceexample.FirebaseActivity$1.onDataChange(FirebaseActivity.java:42) at com.google.android.gms.internal.zzbmz.zza(Unknown Source) at com.google.android.gms.internal.zzbnz.zzYj(Unknown Source) at com.google.android.gms.internal.zzboc$1.run(Unknown Source) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:158) at android.app.ActivityThread.main(ActivityThread.java:7229) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
Wenn Ihre App abstürzt, enthält logcat einen Stack-Trace der Ausnahme. Bitte fügen Sie das zu Ihrer Frage hinzu, um Ihre Chancen auf Hilfe zu verbessern. –
Fertig, danke, dass du es bemerkt hast. –