首页 > 解决方案 > 发生 StorageException。位置不存在对象。代码:-13010 HttpResult:404 在 android studio logcat 中

问题描述

这是我的日志:

2018-11-04 08:54:03.257 20512-20582/com.example.nabil.logindemo E/StorageException:发生了 StorageException。对象在该位置不存在。代码:-13010 HttpResult:404 2018-11-04 08:54:03.268 20512-20582/com.example.nabil.logindemo E/StorageException: { "error": { "code": 404, "message": "Not找到。无法获取对象“}} java.io.IOException:{“错误”:{“代码”:404,“消息”:“未找到。无法获取对象”}} 在 com.google.firebase.storage .network.NetworkRequest.parseResponse(com.google.firebase:firebase-storage@@16.0.4:455) 在 com.google.firebase.storage.network.NetworkRequest.parseErrorResponse(com.google.firebase:firebase-storage@@ 16.0.4:435)在 com.google.firebase.storage。firebase.database.core.view.CancelEvent.fire(com.google.firebase:firebase-database@@16.0.4:40) 在 com.google.firebase.database.core.view.EventRaiser$1.run(com.google .firebase:firebase-database@@16.0.4:55) 在 android.os.Handler.handleCallback(Handler.java:808) 在 android.os.Handler.dispatchMessage(Handler.java:101) 在 android.os.Looper .loop(Looper.java:166) at android.app.ActivityThread.main(ActivityThread.java:7425) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.Zygote$MethodAndArgsCaller .run(Zygote.java:245) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:921) 2018-11-04 08:54:03.959 731-2760/?E/iMonitor:FaultDetect:DUMPTOOL_PRINTF 返回。2018-11-04 08:54:03.962 731-2760/? E/iMonitor:故障检测:DUMPTOOL_PRINTF 返回。2018-11-04 08:54:03.966 1248-3184/? E/ReportTools:这不是 beta 用户版本 2018-11-04 08:54:03.970 731-2760/?E/iMonitor:FaultDetect:DUMPTOOL_PRINTF 返回。2018-11-04 08:54:03.970 731-2760/? E/iMonitor:FaultDetect:DUMPTOOL_PRINTF 返回。2018-11-04 08:54:03.970 731-2760/? E/iMonitor:FaultDetect:DUMPTOOL_PRINTF 返回。2018-11-04 08:54:03.970 731-2760/? E/iMonitor:FaultDetect:DUMPTOOL_PRINTF 返回。2018-11-04 08:54:04.057 1859-1884/? E/HsmCoreServiceImpl:onTransact 在代码中是:103 DUMPTOOL_PRINTF 返回。2018-11-04 08:54:03.970 731-2760/? E/iMonitor:FaultDetect:DUMPTOOL_PRINTF 返回。2018-11-04 08:54:04.057 1859-1884/? E/HsmCoreServiceImpl:onTransact 在代码中是:103 DUMPTOOL_PRINTF 返回。2018-11-04 08:54:03.970 731-2760/? E/iMonitor:FaultDetect:DUMPTOOL_PRINTF 返回。2018-11-04 08:54:04.057 1859-1884/? E/HsmCoreServiceImpl:onTransact 在代码中是:103

这是我的Java代码。

ProfileActivity.Java:

public class ProfileActivity extends AppCompatActivity {
private TextView profilename,emailid,age;
private ImageView imageprofile;
private Button btnedit;
private FirebaseAuth firebaseAuth;
private FirebaseDatabase firebaseDatabase;
private FirebaseStorage firebaseStorage;
private StorageReference storageReference;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_profile);
    profilename=findViewById(R.id.profilename);
    emailid=findViewById(R.id.emailid);
    age=findViewById(R.id.age);
    imageprofile=findViewById(R.id.imageprofile);
    getSupportActionBar().setDisplayShowHomeEnabled(true);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);
    firebaseAuth=FirebaseAuth.getInstance();
    firebaseDatabase=FirebaseDatabase.getInstance();
    firebaseStorage=FirebaseStorage.getInstance();
    storageReference=firebaseStorage.getReference();
    storageReference.child(firebaseAuth.getUid()).child("Images/Profile Pic").getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
        @Override
        public void onSuccess(Uri uri) {
            Picasso.get().load(uri).into(imageprofile);
        }
    });
    DatabaseReference databaseReference=firebaseDatabase.getReference(firebaseAuth.getUid());
    databaseReference.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
            DatabaseValues databaseValues=dataSnapshot.getValue(DatabaseValues.class);
            profilename.setText("Name: "+ databaseValues.getProfile_name());
            emailid.setText("Email: "+ databaseValues.getProfile_username());
            age.setText("Age: "+ databaseValues.getProfile_age());
        }

        @Override
        public void onCancelled(@NonNull DatabaseError databaseError) {
            Toast.makeText(ProfileActivity.this,databaseError.getCode(),Toast.LENGTH_SHORT).show();
        }
    });
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()){
        case android.R.id.home:
            onBackPressed();
    }
    return super.onOptionsItemSelected(item);
}
}

数据库值.Java:

public class DatabaseValues {
private String profile_name;
private String profile_username;
private String profile_age;

public DatabaseValues(){

}

public DatabaseValues(String profile_name, String profile_username, String profile_age) {
    this.profile_name = profile_name;
    this.profile_username = profile_username;
    this.profile_age = profile_age;
}

public String getProfile_name() {
    return profile_name;
}

public void setProfile_name(String profile_name) {
    this.profile_name = profile_name;
}

public String getProfile_username() {
    return profile_username;
}

public void setProfile_username(String profile_username) {
    this.profile_username = profile_username;
}

public String getProfile_age() {
    return profile_age;
}

public void setProfile_age(String profile_age) {
    this.profile_age = profile_age;
}
}

标签: androidfirebaseandroid-studio

解决方案


该错误意味着您对 Firebase 存储中文件的引用设置不正确。

检查这一行,该图像的路径/Profile Pic在您的存储中不存在。

您需要编辑您的参考资料才能使其正常工作

storageReference.child(firebaseAuth.getUid()).child("Images/Profile Pic")...

推荐阅读