Java 为什么我能';无法在';设置活动';?

Java 为什么我能';无法在';设置活动';?,java,android,firebase,firebase-realtime-database,Java,Android,Firebase,Firebase Realtime Database,我尝试上传我的个人资料图片,同时我收到的信息是,个人资料图片已成功上传,但无法在设置活动中看到它 我试图更改firebase帐户,但无法工作。 当我选择照片时,它会将我带到我的内部存储,当我选择图像时,它会再次将我带到照片上载方式的一部分,如相册、谷歌照片内部存储、下载等。当照片上载时,它会显示在firebase存储部分,但不会显示在应用程序中。 这是你的电话号码 RootRef.child(“用户”).child(currentUserID) .addValueEventListener(新的

我尝试上传我的个人资料图片,同时我收到的信息是,个人资料图片已成功上传,但无法在设置活动中看到它

我试图更改firebase帐户,但无法工作。 当我选择照片时,它会将我带到我的内部存储,当我选择图像时,它会再次将我带到照片上载方式的一部分,如相册、谷歌照片内部存储、下载等。当照片上载时,它会显示在firebase存储部分,但不会显示在应用程序中。 这是你的电话号码

RootRef.child(“用户”).child(currentUserID)
.addValueEventListener(新的ValueEventListener(){
@凌驾
公共void onDataChange(DataSnapshot DataSnapshot){
如果((dataSnapshot.exists())&&(dataSnapshot.hasChild(“名称”)&&(dataSnapshot.hasChild(“图像”)){
String retrieveUserName=dataSnapshot.child(“名称”).getValue().toString();
String retrieveUserStatus=dataSnapshot.child(“状态”).getValue().toString();
String retrieveProfileImage=dataSnapshot.child(“图像”).getValue().toString();
userName.setText(retrieveUserName);
setText(retrieveUserStatus);
Picasso.get().load(retrieveProfileImage).into(userProfileImage);
}
else如果((dataSnapshot.exists())&&(dataSnapshot.hasChild(“name”)){
String retrieveUserName=dataSnapshot.child(“名称”).getValue().toString();
String retrieveUserStatus=dataSnapshot.child(“状态”).getValue().toString();
userName.setText(retrieveUserName);
setText(retrieveUserStatus);
}
否则{
userName.setVisibility(View.VISIBLE);
Toast.makeText(SettingsActivity.this,“再次检查详细信息”,Toast.LENGTH_SHORT.show();
}
}
@凌驾
已取消的公共void(DatabaseError DatabaseError){
}
});
}
私有void更新设置(){
字符串setUserName=userName.getText().toString();
字符串setStatus=userStatus.getText().toString();
if(TextUtils.isEmpty(setUserName)){
Toast.makeText(这个“用户名为空”,Toast.LENGTH_SHORT.show();
}
if(TextUtils.isEmpty(setStatus)){
Toast.makeText(此“状态为空”),Toast.LENGTH_SHORT.show();
}
否则{
HashMap profileMap=新的HashMap();
profileMap.put(“uid”,currentUserID);
profileMap.put(“name”,setUserName);
profileMap.put(“状态”,setStatus);
RootRef.child(“用户”).child(currentUserID).setValue(profileMap)
.addOnCompleteListener(新的OnCompleteListener(){
@凌驾
未完成的公共void(任务){
if(task.issusccessful()){
SendUserToMainActivity();
Toast.makeText(SettingsActivity.this,“个人资料更新。谢谢!!!”,Toast.LENGTH\u SHORT.show();
}
否则{
字符串消息=task.getException().toString();
Toast.makeText(SettingsActivity.this,“错误:+消息,Toast.LENGTH\u SHORT.show();
}
}
});
}
}```

我认为您错过了从应用程序发送图像。 在
UpdateSettings()
方法中,您必须将图像发送到firebase。 在下面的HashMap中,添加图像并发送到firebase

HashMap<String, String> profileMap = new HashMap<>();
profileMap.put("uid", currentUserID);
profileMap.put("name", setUserName);
profileMap.put("status", setStatus);
profileMap.put("image", [YOUR_IMAGE_STRING]);
HashMap profileMap=newhashmap();
profileMap.put(“uid”,currentUserID);
profileMap.put(“name”,setUserName);
profileMap.put(“状态”,setStatus);
put(“image”,[YOUR_image_STRING]);

您可以发布数据库中的一个用户数据吗?因此,我们可以通过“image”键确定数据库中存储的值。你确定我会发送上传图像的数据库的屏幕截图。顺便说一下,这是链接,我已经询问了你的数据结构。不是你的图像存储。我在哪里可以找到它?顺便说一句,我是android新手。我正在通过观看视频教程制作这个应用。我刚刚对设置活动做了一些更改,现在正在运行。谢谢你们的帮助,希望你们在未来的项目中都能帮助我。
HashMap<String, String> profileMap = new HashMap<>();
profileMap.put("uid", currentUserID);
profileMap.put("name", setUserName);
profileMap.put("status", setStatus);
profileMap.put("image", [YOUR_IMAGE_STRING]);