Android - Imposible subir fotos al Storage de tiempo real de Firebase

 
Vista:

Imposible subir fotos al Storage de tiempo real de Firebase

Publicado por aAa Designer (1 intervención) el 07/06/2020 16:53:58
saludos a los **Experto y grandes conocedores de la programacion**, les tengo el siguiente problema:

EN mi activity Tengo **2 ImageView y un boton**.

Si le das click a cualquiera de las imageview, ya sea la **Imagen A** o la **ImagenB**, me abre la galeria del telefono y puedo escoger una imagen, y se me muestra en el ImageView que seleccione, hasta alli todo perfecto

Luego tengo un **boton SUBIRFOTOS**, que al darle click cree una funcion para que ambas imagenes ya escogidas y mostradas en los respectivos ImageView sean subidas al **Storage de firebase**.

La funcion va perfecto, pero tan solo me sube una de las fotos, no me sube ambas fotos, y de verdad que ni idea de lo que estoy realizando mal, me gustaria que chequearan el codigo a ver que le falto a la funcion del boton, para que me suba ambas fotos y no solo una de las fotos.

**De antemano Gracias a todos toda la ayuda.**

-------------- **Layout** -------------

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">

<de.hdodenhof.circleimageview.CircleImageView
android:id="@+id/imagenA"
android:layout_width="60dp"
android:layout_height="60dp"
android:src="@drawable/subirfoto"
app:civ_border_width="3dp"
app:civ_border_color="@color/banner" />


<de.hdodenhof.circleimageview.CircleImageView
android:id="@+id/imagenB"
android:layout_width="60dp"
android:layout_height="60dp"
android:src="@drawable/subirfoto"
app:civ_border_width="3dp"
app:civ_border_color="@color/banner" />

<Button
android:id="@+id/subirfotos"
android:layout_width="100dp"
android:layout_height="60dp" />

</LinearLayout>

--------------**Java** ----------------


public class crearcampeonato extends AppCompatActivity {

Button subirfotos;
private CircleImageView imagenA, imagenB, currentImageView;
private static final int ImageBack = 1;
private StorageReference carpeta;
Uri ImageResultadoUri, ImageUri;
private StorageReference carpeta;

@RequiresApi(api = Build.VERSION_CODES.KITKAT)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_crearcampeonato);

carpeta = FirebaseStorage.getInstance().getReference().child("fotos");
imagenA = findViewById(R.id.imagenA);
imagenB = findViewById(R.id.imagenB);
subirfotos = findViewById(R.id.btnsubirfotos);

imagenA.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
currentImageView = imagenA;
Intent intent = new Intent();
intent.setAction(Intent.ACTION_GET_CONTENT);
intent.setType("image/*");
startActivityForResult(intent, ImageBack);
}
});

imagenB.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
currentImageView = imagenB;
Intent intent = new Intent();
intent.setAction(Intent.ACTION_GET_CONTENT);
intent.setType("image/*");
startActivityForResult(intent, ImageBack);
}
});

// Boton subir Fotos

subirfotos.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {

subiendostorage();

}
});

}

//Comienzo Funcion Boton Subir Fotos

@RequiresApi(api = Build.VERSION_CODES.KITKAT)
private void subiendostorage() {

if (ImageUri!=null)
{
StorageReference FilePath = carpeta.child(Objects.requireNonNull(ImageResultadoUri.getLastPathSegment()));
FilePath.putFile(ImageResultadoUri).addOnCompleteListener(new
OnCompleteListener<UploadTask.TaskSnapshot>() {
@RequiresApi(api = Build.VERSION_CODES.KITKAT)
@Override
public void onComplete(@NonNull Task<UploadTask.TaskSnapshot> task) {

if (task.isSuccessful())
{
Toast.makeText(crearcampeonato.this, "Foto Cargada Correctamente",
Toast.LENGTH_SHORT).show();

}
else
{
String mensaje = Objects.requireNonNull(task.getException()).toString();
Toast.makeText(crearcampeonato.this, "Error:" + mensaje, Toast.LENGTH_SHORT).show();
}

}
});
}

}

// Final Funcion Subir Fotos

@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);

if (requestCode == ImageBack && resultCode == RESULT_OK && data!=null)
{
ImageUri = data.getData();
CropImage.activity(ImageUri)
.setGuidelines(CropImageView.Guidelines.ON)
.setAspectRatio(1,1)
.start(this);
}
if (requestCode == CropImage.CROP_IMAGE_ACTIVITY_REQUEST_CODE && resultCode ==
RESULT_OK) {
CropImage.ActivityResult result = CropImage.getActivityResult(data);
assert result != null;
ImageResultadoUri = result.getUri();
}

try {
Bitmap bitmap = MediaStore.Images.Media.getBitmap(getContentResolver(),
ImageResultadoUri);
Bitmap.createScaledBitmap(bitmap, 200,200,true);
currentImageView.setImageBitmap(bitmap);
} catch (Exception e){
e.printStackTrace();
}

}
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder