2017-03-05 33 views
1

firebase console火力地堡的Android数据保存时不正确地

数据被保存在火力地堡的方式是,用户ID是各下推送ID,而它应该是周围的其他方法;即User ID下的Push ID。

我必须在我的代码中更改什么?

private void saveServiceDetails(){ 
    adService1 adService1 = new adService1(Name, Description, Category, downloadUrl, lat, lng); 

    final ProgressDialog progressDialog = new ProgressDialog(this); 
    progressDialog.setMessage("Saving information..., please wait"); 
    progressDialog.show(); 
    FirebaseUser user = firebaseAuth.getCurrentUser(); 
    databaseReference.child(user.getUid()).setValue(adService1) 
      .addOnCompleteListener(this, new OnCompleteListener<Void>() { 
       @Override 
       public void onComplete(@NonNull Task<Void> task) { 
        if (task.isSuccessful()){ 
         progressDialog.dismiss(); 
         Toast.makeText(getApplicationContext(), "Information saved...", Toast.LENGTH_LONG).show(); 
        } 
       } 
      }); 

} 

回答

0

试试这个代码:

.... 
FirebaseUser user = firebaseAuth.getCurrentUser(); 
String key = databaseReference.child(user.getUid()).push().getKey(); 
databaseReference.child(user.getUid()).child(key).setValue(adService1) 
     .addOnCompleteListener(this, new OnCompleteListener<Void>() { 
      @Override 
      public void onComplete(@NonNull Task<Void> task) { 
       if (task.isSuccessful()){ 
        progressDialog.dismiss(); 
        Toast.makeText(getApplicationContext(), "Information saved...", Toast.LENGTH_LONG).show(); 
       } 
      } 
     }); 
+0

什么是 “mDatabase”? – jo12345678

+0

对不起,我的错误,应该是你的数据库引用 – faruk