Я создал приложение для входа и использую базу данных firebase. Но у меня есть проблема, когда я пытаюсь сохранить объект в базе данных. Хотя, когда я пытаюсь сохранить простую строку или просто HashMap
объект все работает.android save object in firebase
я получил ошибку:
com.google.firebase.database.DatabaseException: Found a conflicting setters with name: setWallpaper (conflicts with setWallpaper defined on android.content.ContextWrapper)
Вот мой код:
Основная деятельность:
public class MainActivity extends AppCompatActivity {
EditText userName;
EditText password;
Button signInbtn;
DatabaseReference url;
Map<String, User> users = new HashMap<String, User>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final FirebaseDatabase database = FirebaseDatabase.getInstance();
url = database.getInstance().getReference();
userName = (EditText) findViewById(R.id.userName);
password = (EditText) findViewById(R.id.password);
signInbtn = (Button) findViewById(R.id.signInBtn);
signInbtn.setOnClickListener(signObject);
}
View.OnClickListener signObject = new View.OnClickListener() {
@Override
public void onClick(View view) {
User user = new User("Moshe","1234");
users.put("101",user);
DatabaseReference userUrl = url.child("Users");
userUrl.setValue(users);
System.out.println(users);
}
};
Класс пользователя:
public class User extends Application {
public static String password;
public static String name ;
public User(){
}
public User(String name,String password){
this.name = name;
this.password = password;
}
public String getName() {
return name;
}
public void setName(String name) {
User.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
User.password = password;
}
}
Я добавил permmision.Internet к манифесту. Я много читал об этой теме и особенно о Firebase, но я не нашел решения для своей проблемы.
я сделал то, что вы говорите, теперь приложение не дробильно пока он компилирует, но все же не сохранять данные –
Это может быть по многим причинам и действительно был бы другой вопрос. Тем не менее: я начну с прослушивания проблем безопасности в 'setValue()'. См. Http://stackoverflow.com/documentation/firebase/5548/how-do-i-listen-for-errors-when-accessing-the-database/19721/detect-errors-when-writing-a-value-on -android # т = +201612090709222522846 –