Android पर Cloud Storage के लिए गड़बड़ियां मैनेज करना

कभी-कभी ऐसा होता है कि चीज़ें प्लान के मुताबिक नहीं होतीं और कोई गड़बड़ी हो जाती है.

अगर आपको कोई संदेह है, तो गड़बड़ी की जानकारी देखें और देखें कि गड़बड़ी का मैसेज क्या कहता है. नीचे दिया गया कोड, गड़बड़ी को मैनेज करने वाले कस्टम हैंडलर को लागू करने का तरीका दिखाता है. यह Cloud Storage से मिले गड़बड़ी कोड और गड़बड़ी के मैसेज की जांच करता है. गड़बड़ी को मैनेज करने वाले ऐसे फ़ंक्शन, Cloud Storage एपीआई में इस्तेमाल किए जाने वाले अलग-अलग ऑब्जेक्ट में जोड़े जा सकते हैं. उदाहरण के लिए, UploadTask और FileDownloadTask.

Kotlin+KTX

internal inner class MyFailureListener : OnFailureListener {
    override fun onFailure(exception: Exception) {
        val errorCode = (exception as StorageException).errorCode
        val errorMessage = exception.message
        // test the errorCode and errorMessage, and handle accordingly
    }
}

Java

class MyFailureListener implements OnFailureListener {
    @Override
    public void onFailure(@NonNull Exception exception) {
        int errorCode = ((StorageException) exception).getErrorCode();
        String errorMessage = exception.getMessage();
        // test the errorCode and errorMessage, and handle accordingly
    }
}

अगर आपने गड़बड़ी का मैसेज देखा है और आपके पास Cloud Storage Security Rules है, जिससे कार्रवाई की अनुमति मिलती है, लेकिन फिर भी गड़बड़ी ठीक करने में समस्या आ रही है, तो हमारे सहायता पेज पर जाएं और हमें बताएं कि हम आपकी मदद कैसे कर सकते हैं.

गड़बड़ी के मैसेज मैनेज करना

गड़बड़ियां होने की कई वजहें हो सकती हैं. जैसे, फ़ाइल मौजूद न होना, उपयोगकर्ता के पास फ़ाइल को ऐक्सेस करने की अनुमति न होना या उपयोगकर्ता ने फ़ाइल अपलोड करने की प्रोसेस रद्द कर दी हो.

समस्या का सही तरीके से पता लगाने और गड़बड़ी को ठीक करने के लिए, यहां उन सभी गड़बड़ियों की पूरी सूची दी गई है जो हमारे क्लाइंट से दिखेंगी. साथ ही, यह भी बताया गया है कि ये गड़बड़ियां कैसे हो सकती हैं. इस टेबल में मौजूद गड़बड़ी कोड, StorageException क्लास में पूर्णांक के तौर पर तय किए गए हैं.

कोड वजह
ERROR_UNKNOWN कोई अनजानी गड़बड़ी हुई.
ERROR_OBJECT_NOT_FOUND दिए गए रेफ़रंस पर कोई ऑब्जेक्ट मौजूद नहीं है.
ERROR_BUCKET_NOT_FOUND Cloud Storage के लिए कोई बकेट कॉन्फ़िगर नहीं की गई है
ERROR_PROJECT_NOT_FOUND Cloud Storage के लिए कोई प्रोजेक्ट कॉन्फ़िगर नहीं किया गया है
ERROR_QUOTA_EXCEEDED आपकी Cloud Storage बकेट का कोटा पूरा हो गया है. अगर आपने Spark की कीमत का प्लान लिया है, तो इस्तेमाल के हिसाब से पैसे चुकाने वाले ब्लेज़ प्लान पर अपग्रेड करें. अगर आपने पहले ही Blaze प्लान की सदस्यता ली हुई है, तो Firebase की सहायता टीम से संपर्क करें.

अहम जानकारी: 1 अक्टूबर, 2025 से, Cloud Storage का इस्तेमाल करने के लिए, Blaze प्लान की सदस्यता लेना ज़रूरी होगा. यहां तक कि डिफ़ॉल्ट बकेट का इस्तेमाल करने के लिए भी यह ज़रूरी होगा.
ERROR_NOT_AUTHENTICATED उपयोगकर्ता की पहचान की पुष्टि नहीं की गई है. कृपया पुष्टि करें और फिर से कोशिश करें.
ERROR_NOT_AUTHORIZED उपयोगकर्ता के पास अनुरोध की गई कार्रवाई करने की अनुमति नहीं है. अपने नियमों की जांच करके पक्का करें कि वे सही हैं.
ERROR_RETRY_LIMIT_EXCEEDED किसी कार्रवाई (अपलोड, डाउनलोड, मिटाना वगैरह) के लिए तय की गई समयसीमा खत्म हो गई है. फिर से कोशिश करें.
ERROR_INVALID_CHECKSUM क्लाइंट पर मौजूद फ़ाइल, सर्वर से मिली फ़ाइल के चेकसम से मेल नहीं खाती. फिर से अपलोड करने की कोशिश करें.
ERROR_CANCELED उपयोगकर्ता ने कार्रवाई को रद्द कर दिया है.

इसके अलावा, अमान्य यूआरएल का इस्तेमाल करके getReferenceFromUrl() को कॉल करने पर, IllegalArgumentException को थ्रो किया जाएगा. ऊपर दिए गए तरीके के लिए, आर्ग्युमेंट gs://bucket/object या https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=<TOKEN> फ़ॉर्मैट में होना चाहिए