Я создаю приложение, чтобы нажимать на фотографии, а затем загружать их в хранилище Firebase, но я получаю это исключение nullpointer
в своем коде.
Я тоже пробовал растровое изображение, но это не помогло, так как я все еще получаю ту же ошибку.Это мой код ниже метода onActivityResult
:
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode==CAMERA_REQUEST_CODE&& resultCode==RESULT_OK){
Uri uri=data.getData();
StorageReference filepath =mStorage.child("Photos").child(uri.getLastPathSegment());
filepath.putFile(uri).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
Uri downloadUri = taskSnapshot.getUploadSessionUri();
Toast.makeText(MainActivity.this,"upload finished",Toast.LENGTH_LONG).show();
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Toast.makeText(MainActivity.this, "Sending failed", Toast.LENGTH_SHORT).show();
}
});
}
}
}
Ошибка, которую я получаю:
Причина: java.lang.NullPointerException: Попытка вызвать виртуальныйметод 'java.lang.String android.net.Uri.getLastPathSegment ()' для ссылки на пустой объект