Uploading image doesn't work in firebase cloud storage

Viewed 168

I'm having trouble uploading an image to firebase cloud storage. I get no errors/warnings, the upload just doesn't seem to work! Both the Toasts are not showing either, the app just sits idle and after a while shows "connection refused.." in the logcat.

Here's the code snippet :

    private Uri fileUri;
    private StorageReference storageReference;
    private UploadTask uploadTask;
    private String myurl = "";


    private void SelectImage()
    {
        Intent intent = new Intent();
        intent.setAction(Intent.ACTION_GET_CONTENT);
        intent.setType("image/*");
        startActivityForResult(Intent.createChooser(intent, "Select Image"), 420);
    }



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

        if(requestCode==420 && resultCode==RESULT_OK && data!=null && data.getData()!=null)
        {


            fileUri = data.getData();
            storageReference = FirebaseStorage.getInstance().getReference().child("Image Files");
            final StorageReference filepath = storageReference.child(nameString+".jpg");



            uploadTask = filepath.putFile(fileUri);
            uploadTask.addOnFailureListener(new OnFailureListener() {
                @Override
                public void onFailure(@NonNull Exception exception) {
                    Toast.makeText(MessageActivity.this, "Failed", Toast.LENGTH_SHORT).show();
                    // Handle unsuccessful uploads
                }
            }).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
                @Override
                public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
                    Toast.makeText(MessageActivity.this, "Uploaded Successfully!", Toast.LENGTH_SHORT).show();
                    // taskSnapshot.getMetadata() contains file metadata such as size, content-type, etc.
                    // ...




                }

            });


        }

dependencies used:

    implementation 'com.google.firebase:firebase-auth:16.0.1'
    implementation 'com.google.firebase:firebase-database:16.0.1'
    implementation 'com.google.firebase:firebase-storage:16.0.1'
    implementation 'com.google.firebase:firebase-analytics:16.0.1'

manifest.xml:

    <uses-permission android:name="android.permission.INTERNET"/>

logcat:

    2020-05-10 04:39:04.568 2441-3863/com.example.myproject W/NetworkRequest: error sending network request POST https://firebasestorage.googleapis.com/v0/b/myproject.appspot.com/o
    java.net.ConnectException: Connection refused
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:334)
        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:196)
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:178)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:356)
        at java.net.Socket.connect(Socket.java:586)
        at com.android.okhttp.internal.Platform.connectSocket(Platform.java:113)
        at com.android.okhttp.Connection.connectSocket(Connection.java:196)
        at com.android.okhttp.Connection.connect(Connection.java:172)
        at com.android.okhttp.Connection.connectAndSetOwner(Connection.java:367)
        at com.android.okhttp.OkHttpClient$1.connectAndSetOwner(OkHttpClient.java:130)
        at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:329)
        at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:246)
        at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:457)
        at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:405)
        at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:521)
        at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getResponseCode(DelegatingHttpsURLConnection.java:105)
        at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java)
        at bmh.b(:com.google.android.gms.dynamite_dynamitemodulesc@16089052@16.0.89 (040700-239467275):60)
        at bmh.a(:com.google.android.gms.dynamite_dynamitemodulesc@16089052@16.0.89 (040700-239467275):93)
        at bmc.a(:com.google.android.gms.dynamite_dynamitemodulesc@16089052@16.0.89 (040700-239467275):35)
        at rj.onTransact(:com.google.android.gms.dynamite_dynamitemodulesc@16089052@16.0.89 (040700-239467275):4)
        at android.os.Binder.transact(Binder.java:499)
        at com.google.android.gms.internal.firebase_storage.zza.transactAndReadExceptionReturnVoid(Unknown Source)
        at com.google.android.gms.internal.firebase_storage.zzm.zze(Unknown Source)
        at com.google.android.gms.internal.firebase_storage.zzq.zza(Unknown Source)
        at com.google.android.gms.internal.firebase_storage.zzf.zza(Unknown Source)
        at com.google.firebase.storage.UploadTask.zzc(Unknown Source)
        at com.google.firebase.storage.UploadTask.run(Unknown Source)
        at com.google.firebase.storage.StorageTask.zzl(Unknown Source)
        at com.google.firebase.storage.zzx.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
        at java.lang.Thread.run(Thread.java:761)

0 Answers
Related