[英]Firebase Storage image upload
我正在使用以下方法来保存信息。
private void saveUserData() {
progressDialog.setTitle("Account Settings");
progressDialog.setMessage("Please wait while settings are being changed...");
progressDialog.show();
final StorageReference imageRef = storageReference
.child(FirebaseAuth.getInstance().getCurrentUser().getUid());
imageRef.putFile(imageUri);
}
我删除了一些用于访问数据库的代码行。
这是日志猫的描述。
E/StorageException:发生了 StorageException。 发生未知错误,请检查 HTTP 结果代码和服务器响应的内部异常。 代码:-13000 HttpResult:0 E/AndroidRuntime:致命异常:FirebaseStorage-Upload-1
我搜索了这个错误代码并发现
案例未知 = -13000
当我评论这一行时,应用程序不会崩溃。
imageRef.putFile(imageUri);
附带说明一下,我能够成功保存文本信息,甚至可以从数据库中检索它。
编辑
这是代码。
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_settings);
storageReference = FirebaseStorage.getInstance()
.getReference().child("Profile Pictures");
profileImageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.setAction(Intent.ACTION_GET_CONTENT);
intent.setType("image/*");
startActivityForResult(intent, galleryPick);
}
});
saveButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
saveUserData();
}
});
retrieveUserInformation();
}
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == galleryPick && resultCode == RESULT_OK && data != null) {
imageUri = data.getData();
profileImageView.setImageURI(imageUri);
}
}
给定变量名imageUri
,您正在尝试从 URL 上传到存储,这是不受支持的。 您首先必须从 URL 下载数据,然后将其上传到存储。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.