如何将图像上传到Picasso for Android应用程序?

时间:2017-06-29 08:40:12

标签: android firebase picasso firebase-storage

在我的应用程序中,我想让用户添加他们的详细信息和一些图像以保存在FIREBASE数据库中,我尝试使用以下代码上传图像,但是当我上传另一个图像时,它只是覆盖了前一个图像。然后我知道FIREBASE只保存图像的URL,但问题是我无法在PICASSO中保存或缓存图像。

private void uploadImage(){
    if(filePath!=null) {
        progressDialog.setTitle("file is uploading...");

        progressDialog.show();
        StorageReference riversRef = mStorageRef.child("databaseImages/image.jpg");

        riversRef.putFile(filePath)
                .addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
                    @Override
                    public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
                        progressDialog.dismiss();
                        showToast("file uploaded");
                    }
                })
                .addOnFailureListener(new OnFailureListener() {
                    @Override
                    public void onFailure(@NonNull Exception exception) {
                        progressDialog.dismiss();
                        showToast(exception.getMessage());
                    }
                }).addOnProgressListener(new OnProgressListener<UploadTask.TaskSnapshot>() {
            @Override
            public void onProgress(UploadTask.TaskSnapshot taskSnapshot) {
                double progress = (100.0*taskSnapshot.getBytesTransferred()/taskSnapshot.getTotalByteCount());
                progressDialog.setMessage(((int)progress)+"% uploaded");
            }
        })
        ;
    }else{
        //display error toast
        showToast("please select an image.");
    }
}

0 个答案:

没有答案