मैं अपने रिएक्ट नेटिव ऐप (संस्करण 0.59.1) को एक एंड्रॉइड डिवाइस के साथ चलाने की कोशिश कर रहा हूं जो कि एपीआई 16 है और इसमें Google Play सेवाएं नहीं हैं। मेरी समस्या यह है कि जब मैं रिलीज मोड में अपना ऐप बनाता हूं, तो एचटीटीपीएस पर मेरे एपीआई को कॉल करने से मुझे "नेटवर्क त्रुटि" मिलती है जिसमें कोई और विवरण नहीं होता है। ये कॉल FETCH का उपयोग करके की जाती हैं।

डिबग मोड में चलते समय HTTPS पर API कॉल ठीक काम करता है। मैंने यह भी पुष्टि की है कि रिलीज मोड में चलते समय सिर्फ HTTP काम करता है।

मैंने कई पोस्ट देखी हैं जो मेरी अपनी टीएलएस/एसएसएल कनेक्शन फैक्ट्री बनाने का सुझाव देती हैं लेकिन ऐसा लगता है कि रिएक्ट नेटिव को पहले से ही अपने OkHttpProvider के साथ इसे संभालना चाहिए: https://github.com/facebook/react-native/blob/master /ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpClientProvider.java

मैंने यहां दिखाए गए प्रो-गार्ड नियम भी शामिल किए हैं: https://stackoverflow.com/a/38484643/3178433

मैंने प्रो-गार्ड को बंद करने की भी कोशिश की है और इससे कोई फर्क नहीं पड़ा।

क्या मैं कुछ भूल रहा हूँ? क्या कोई लापता प्रोगार्ड नियम है? क्या प्रतिक्रिया द्वारा प्रदान किया गया OkHttpClientProvider उपयोग नहीं कर रहा है जैसा कि मैं सोच रहा हूं?

0
cacodev 5 अप्रैल 2019, 16:35

1 उत्तर

सबसे बढ़िया उत्तर

समाधान मिला। मैंने इस प्रोगार्ड नियम को जोड़ा और समस्या हल हो गई:

-keepclassmembers class * implements javax.net.ssl.SSLSocketFactory {
    private final javax.net.ssl.SSLSocketFactory delegate;
}
1
cacodev 6 अप्रैल 2019, 00:50