imageprofilreguser.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
choosePicture();
}
});
}
private void choosePicture() {
Intent intent=new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(intent,1);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode==1&&resultCode==RESULT_OK&&data!=null&&data.getData()!=null){
imageUri=data.getData();
imageprofilreguser.setImageURI(imageUri);
uploadPicture();
}
}
private void uploadPicture() {
final ProgressDialog pd=new ProgressDialog(this);
pd.setTitle("загрузка");
pd.show();
final String randomKey= UUID.randomUUID().toString();
StorageReference riversRef = storageProfilePicsRef.child("images/"+randomKey);
riversRef.putFile(imageUri);
riversRef.putFile(file)
.addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
pd.dismiss();
Snackbar.make(findViewById(android.R.id.content),"image",Snackbar.LENGTH_LONG).show();
}
});
addOnFailurelListener(new OnFailureListener(){
@Override
public void onFailure(@NonNull Exception exception){
pd.dismiss();
Toast.makeText(getApplicationContext(),"failed to Uploa",Toast.LENGTH_LONG).show();
}
});
addOnProgressListener(new OnProgressListener<UploadTask.TaskSnapshot>(){
@Override
public void onProgress(@NonNull UploadTask.TaskSnapshot taskSnapshot){
double progressPercent=(100.00*taskSnapshot.getBytesTransferred()/taskSnapshot.getTotalByteCount());
pd.setMessage("Percentage"+(int)progressPercent+"%");
}
});
Прописал такой код для публикации фото чтобы пользователь нажимам на imageprofil и сразу открывалась галерея с выбором и после публикация в базу. Но тут ошибка как ее исправить? Заранее спасибо