मुझे अपने इन ऐप खरीद प्रबंधक के साथ कोई समस्या है। मैं अपना दृश्य लोड करता हूं और सफलतापूर्वक आइटम खरीद सकता हूं। मैं खेल में एक नए दृश्य पर जाता हूं और फिर उस दृश्य पर वापस जाता हूं और अब यह कहता है ...

`MissingReferenceException: 'IAPManager' प्रकार की वस्तु को नष्ट कर दिया गया है लेकिन आप अभी भी इसे एक्सेस करने का प्रयास कर रहे हैं।

आपकी स्क्रिप्ट को या तो यह जांचना चाहिए कि क्या यह शून्य है या आपको ऑब्जेक्ट को नष्ट नहीं करना चाहिए। और फिर my को इस लाइन की ओर इंगित करता है

moneyController = GetComponent<MoneyController>();

उस समय यह दुर्घटनाग्रस्त क्यों होता है? क्या मुझे DontDestroyOnLoad या कुछ और जोड़ने की ज़रूरत है? मैं इससे परिचित नहीं हूं या हालांकि इसका उपयोग कैसे करना है। क्या मुझे कुछ आसान याद आ रहा है? यहां कुछ और कोड स्निपेट दिए गए हैं जो उपयोगी साबित हो भी सकते हैं और नहीं भी। यह कोड एक ट्यूटोरियल से है इसलिए मेरे लिए इस मुद्दे को इंगित करना मुश्किल है।

public static IAPManager Instance{set;get;}

private void Awake() { Instance = this; }

0
Thomas Byy 22 जिंदा 2020, 14:12

1 उत्तर

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

आपको इस तरह से DontDestroyOnLoad डालना होगा, इसके लिए आपको कोई त्रुटि नहीं मिलेगी। नीचे वह कोड है जिसका आप उपयोग कर सकते हैं।

private static IAPManager instance;
public static IAPManager Instance
{
    get
    {
        if (instance == null) 
        {
            GameObject o = new GameObject ("IAPManager");
            instance=o.AddComponent<IAPManager>();
            DontDestroyOnLoad (o);


        }
        return instance;
    }
}
0
Dharmik 22 जिंदा 2020, 12:28