java - फायरबेस स्टोरेज से डाउनलोड यूआरएल कैसे प्राप्त करें?



android firebase (1)

डाउनलोड url प्राप्त करने के लिए, आपको addOnSuccessListener का उपयोग addOnSuccessListener , जैसे कि कोड की निम्नलिखित पंक्तियों में:

uploadTask.addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
    @Override
    public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
        storageRef.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
            @Override
            public void onSuccess(Uri uri) {
                String url = uri.toString();

                //Do what you need to do with url
            }
        });
    }
});

23 मई, 2018 को फायरबेस रिलीज नोट्स में उल्लेख किया गया है कि:

क्लाउड स्टोरेज संस्करण 16.0.1

हटाए गए StorageMetadata.getDownloadUrl () और UploadTask.TaskSnapshot.getDownloadUrl () विधियों को हटा दिया गया। वर्तमान डाउनलोड URL प्राप्त करने के लिए, StorageReference.getDownloadUr () का उपयोग करें।

तो अब जब getDownloadUrl() ऑब्जेक्ट पर getDownloadUrl() कॉल कर रहा है तो यह एक Task ऑब्जेक्ट देता है और अब उड़ी ऑब्जेक्ट नहीं।

कृपया यह भी याद रखें, न तो सफलता श्रोता और न ही विफलता श्रोता (यदि आप इसका उपयोग करने का इरादा रखते हैं), तो यह कहा जाएगा कि क्या आपका डिवाइस फायरबेस स्टोरेज बैकेंड तक नहीं पहुंच सकता है। सफलता / विफलता श्रोताओं को केवल एक बार डेटाबेस के लिए प्रतिबद्ध, या फायरबेस सर्वर द्वारा अस्वीकार कर दिया जाना चाहिए।

मैं Firebase के uploadTask.addOnProgressListener विधि से डाउनलोड यूआरएल प्राप्त करना चाहता हूं। मैं निम्नलिखित कोड का उपयोग करके डाउनलोड यूआरएल कैसे प्राप्त कर सकता हूं?

    UploadTask uploadTask = storageRef.putBytes(data);

    uploadTask.addOnProgressListener(new OnProgressListener<UploadTask.TaskSnapshot>()
    {
        @Override
        public void onProgress(UploadTask.TaskSnapshot taskSnapshot)
        {
            Log.d("aaaaasessin",""+taskSnapshot.getTask().getResult());
        }
    });

मैंने taskSnapshot.getTask().getResult() उपयोग किया taskSnapshot.getTask().getResult() लेकिन वह काम नहीं कर रहा है।





firebase-storage