получение URI и добавление файла в FIrebaseStorage ANDROID

Доброго времени столкнулся с проблемой добавления файлов с устройства в Firebase с начало я пробовал сделать что б выбрав 2 фотографии человек при нажатии Btn next добавлял в базу данных запись,файл и вызывал интент на следующую но что то не задалось и было принято взять что б добавление фотографии и генерацию url файла из firebase было назначено на отдельную кнопку после чего вроде всё заработало открывается интент на image файлы но после выбора он откатывает меня на прошлую активити и говорит что не может найти такой файл! Пожалуйста помогите я уже 5 день не могу понять как это всё реализовать

  public class ChekInformation extends AppCompatActivity {
    //constant
    private static final int PICK_IMAGE_REQUEST = 1;

    //intent fragment
    private String username;
    //

    //info card
    private EditText number_indefication_card, date_give_card, end_of_card, MKK,
    //info user

    surname, name, secondName, dateBorn, bornPlace,
    //plase user
     city, region, street, house_and_apartment;


    //photo for identification
    private Uri firstImage,
            secondImage,
            imageURI;
    public static String urlfile;
    private String firstUrl;
    private String secondUrl;

   private ProgressBar mProgressBar;


   private  ImageButton btnFirstImage,btnSecondImage;
    private Button nextButton;
    private TextView alert;


    private FirebaseDatabase database;
    private DatabaseReference myRef;
    private StorageReference myStorageRef;



    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_chek_information);
        Intent intent = getIntent();
        String username =intent.getStringExtra("EXTRA_USERNAME");


        //EDITTEXTS
        mProgressBar=(ProgressBar)findViewById(R.id.mProgressBar);
            ////info card
            number_indefication_card = (EditText) findViewById(R.id.number_indefication_card);
            date_give_card = (EditText) findViewById(R.id.date_give_card);
            end_of_card = findViewById(R.id.end_of_card);
            MKK = findViewById(R.id.MKK);

            //info user

        surname = (EditText) findViewById(R.id.familyi);
            name = (EditText) findViewById(R.id.name);
            secondName = (EditText) findViewById(R.id.secondName);
            dateBorn = (EditText) findViewById(R.id.dateBorn);
            bornPlace = (EditText) findViewById(R.id.bornPlace);

            //plase user
            city = (EditText) findViewById(R.id.city);
            region = (EditText) findViewById(R.id.region);
            street = (EditText) findViewById(R.id.street);
            house_and_apartment = (EditText) findViewById(R.id.house_and_apartment);


        database = FirebaseDatabase.getInstance();
        myStorageRef = FirebaseStorage.getInstance().getReference("uploads").child(username);
        myRef=database.getReference("users").child(username).child("information");

        btnFirstImage = (ImageButton) findViewById(R.id.firstImageButton);
        btnSecondImage= (ImageButton) findViewById(R.id.secondImageButton);


        btnFirstImage.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                openFileChooser();
                firstImage=imageURI;
                uploadFile(firstImage);
                firstUrl=urlfile;

            }
        });



        btnSecondImage.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            openFileChooser();
            secondImage=imageURI;
            uploadFile(secondImage);
            secondUrl=urlfile;
        }
    });
}
    private void openFileChooser() {
        Intent intent = new Intent();
        intent.setType("image/*");
        intent.setAction(Intent.ACTION_GET_CONTENT);
        startActivityForResult(intent, PICK_IMAGE_REQUEST);
    }
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);

        if (requestCode == PICK_IMAGE_REQUEST && resultCode == RESULT_OK
                && data != null && data.getData() != null) {
            imageURI = data.getData();

        }
    }
    private String getFileExtension(Uri uri) {
        ContentResolver cR = getContentResolver();
        MimeTypeMap mime = MimeTypeMap.getSingleton();
        return mime.getExtensionFromMimeType(cR.getType(uri));
    }
    private   void uploadFile(Uri curentImage){
        StorageReference fileReference= myStorageRef.child(username+" "+getFileExtension(curentImage));
        fileReference.putFile(curentImage).addOnSuccessListener( new OnSuccessListener<UploadTask.TaskSnapshot>() {
            @Override
            public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
                urlfile=taskSnapshot.getMetadata().getReference().getDownloadUrl().toString();
            }
        }).addOnFailureListener(new OnFailureListener() {
            @Override
            public void onFailure(@NonNull Exception e) {

            }
        });
    }


            public void nexButton(View view) {
                UserInformationCase userInformation = new UserInformationCase(
                        number_indefication_card.getText().toString(),
                        date_give_card.getText().toString(),
                        end_of_card.getText().toString(),
                        MKK.getText().toString(),

                        surname.getText().toString(),
                        name.getText().toString(),
                        secondName.getText().toString(),
                        dateBorn.getText().toString(),
                        bornPlace.getText().toString(),
                        city.getText().toString(),
                        region.getText().toString(),
                        street.getText().toString(),
                        house_and_apartment.getText().toString(),
                        firstUrl,
                        secondUrl);
                myRef.setValue(userInformation);
                Intent intent = new Intent(this, PActivity.class);
                startActivity(intent);


            }
    }

Ответы (0 шт):