Ich entwickle eine App, die Firebase
als BaaS
verwendet.Die 'Fehlgeschlagene Eingabe kann nicht getippt werden, selbst nachdem die genaue Basisreferenz angegeben wurde. Bitte sehen Sie Details
Das Problem ist, dass ich immer com.firebase.client.FirebaseException: Failed to bounce to type at com.firebase.client.DataSnapshot.getValue(DataSnapshot.java:183) at com.abc.xyz.MainActivity$2.onDataChange(MainActivity.java:119)
auch nach der richtigen Feuerbasis Quelle angeben. Eine weitere bemerkenswerte Zeile im Stacktrace ist Caused by: com.fasterxml.jackson.databind.JsonMappingException: Conflicting setter definitions for property "colorFilter": android.widget.ImageView#setColorFilter(1 params) vs android.widget.ImageView#setColorFilter(1 params)
.
Hier Firebase
Referenz: Firebase mFirebaseRef = new Firebase("https://appname.firebaseio.com/users");
Hier ist mein Stück Code:
mFirebaseRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot snapshot) {
System.out.println("There are " + snapshot.getChildrenCount() + " blog posts");
for (DataSnapshot postSnapshot : snapshot.getChildren()) {
//error on this line
UsersDataFromFirebase post = postSnapshot.getValue(UsersDataFromFirebase.class);
View nameView = navigationView.getHeaderView(0);
userName = (TextView) nameView.findViewById(R.id.userName);
userName.setText(post.getUserName());
System.out.println(post.getUserName());
System.out.println(post.getUserEmail());
// View emailView = navigationView.getHeaderView(0);
// userEmail = (TextView) emailView.findViewById(R.id.userEmail);
// userEmail.setText();
userImageUrl = (URL) authData.getProviderData().get("profileImageUrl");
String userImageUrlString = userImageUrl.toString();
URL url = null;
try {
url = new URL(userImageUrlString);
} catch (MalformedURLException e) {
e.printStackTrace();
}
try {
image = BitmapFactory.decodeStream(url.openConnection().getInputStream());
} catch (IOException e) {
e.printStackTrace();
}
View imageView = navigationView.getHeaderView(0);
userImage = (ImageView) imageView.findViewById(R.id.userImage);
userImage.setImageBitmap(image);
}
}
@Override
public void onCancelled(FirebaseError firebaseError) {
System.out.println("The read failed: " + firebaseError.getMessage());
Toast.makeText(getBaseContext(), firebaseError.getMessage(), Toast.LENGTH_LONG).show();
}
});
} else {
android.app.AlertDialog.Builder builder = new android.app.AlertDialog.Builder(MainActivity.this);
builder.setTitle("No internet connection!");
builder.setMessage("Please connect to the internet.");
builder.setPositiveButton("Open Settings", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
Intent intent = new Intent(Settings.ACTION_SETTINGS);
startActivity(intent);
//progressBar.setVisibility(View.INVISIBLE);
}
});
builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
//progressBar.setVisibility(View.INVISIBLE);
}
});
builder.show();
}
Hier UsersDataFromFirebase.java
Code der Datei:
public class UsersDataFromFirebase {
private String userName;
private String userEmail;
private ImageView userImage;
public UsersDataFromFirebase() {
// empty default constructor, necessary for Firebase to be able to deserialize blog posts
}
public String getUserName() {
return userName;
}
public String getUserEmail() {
return userEmail;
}
public ImageView getUserImage() {
return userImage;
}
}
Als Firebase
etwas ganz Neues für mich, ich bin unfähig herauszufinden, was hier falsch läuft.
Bitte lassen Sie es mich wissen.
Vielen Dank im Voraus!
Welche Zeile im Code ist MainActivity.java:119? Außerdem: Fügen Sie ein Snippet Ihres JSON hinzu, das Sie einfach erhalten, indem Sie in Ihrem Firebase-Dashboard auf die Schaltfläche "Exportieren" klicken. –
@FrankvanPuffelen Ich habe die Zeile erwähnt, auf der ich den Fehler bekomme. Snippet von JSON: '{ "Benutzer": { "20fb1a2a-5658-4b36-Aeroflo28-c807dc6b187a": { "Useremail": "[email protected]", "username": "Hammad Nasir" } } } ' –
@FrankvanPuffelen bitte antworten ... –