Unity गेम के लिए Memory Advice API का इस्तेमाल शुरू करना

इस गाइड में बताया गया है कि Unity के लिए मेमोरी से जुड़ी सलाह वाले प्लगिन का इस्तेमाल इन कामों के लिए कैसे करें को आपस में जोड़ना Memory Advise API में Unity गेम को बढ़ावा दें.

ज़रूरी शर्तें

यह प्लगिन इन पर काम करता है:

  • Android NDK r19 के साथ Unity 2019

  • Android NDK r19 के साथ Unity 2020

  • Android NDK r21 के साथ Unity 2021

  • Android NDK r23 के साथ Unity 2022

Unity के अन्य वर्शन इस्तेमाल करने पर आपको अचानक से समस्याएं आ सकती हैं और Android एनडीके (NDK). आपके Unity इंस्टॉलेशन में इस्तेमाल किया गया एनडीके वर्शन ढूंढने के लिए, यहां जाएं यह Android एनवायरमेंट को सेटअप करने से जुड़ी गाइड Unity के लिए बनाया गया है.

प्लग इन डाउनलोड करें

प्लग इन डाउनलोड करें.

प्लग इन इंपोर्ट करें

प्लगिन एक Unity पैकेज है, जिसे अपने प्रोजेक्ट में इंपोर्ट किया जा सकता है. इंपोर्ट करने के लिए प्लगिन पर क्लिक करें, ऐसेट > पैकेज इंपोर्ट करें > कस्टम पैकेज खोलें और .unitypackage फ़ाइल डाउनलोड की गई. इस बटन पर दो बार क्लिक करके भी ऐसा किया जा सकता है .unitypackage फ़ाइल अपलोड करें.

लाइब्रेरी का इस्तेमाल करना

इस सेक्शन में, लाइब्रेरी को इस्तेमाल करने का तरीका बताया गया है.

लाइब्रेरी शुरू करें

ऐप्लिकेशन के शुरू होने पर, आपको एक बार लाइब्रेरी शुरू करनी होगी. ऐसा करने के लिए, अपने प्रोजेक्ट में यह कोड जोड़ें:

void Start()
{
    MemoryAdviceErrorCode errorCode = MemoryAdvice.Init();
    if(errorCode == MemoryAdviceErrorCode.Ok)
    {
        Debug.Log("Memory advice init successfully");
    }
}

मेमोरी की स्थिति के लिए पोल

लाइब्रेरी की पोलिंग करके, अपने ऐप्लिकेशन की मेमोरी की स्थिति वापस पाई जा सकती है: का अंतराल है. MemoryAdvice_getMemoryState का इस्तेमाल करें सुविधा का इस्तेमाल करें:

MemoryState memoryState = MemoryAdvice.GetMemoryState();
switch (memoryState)
{
    case MemoryState.Ok:
        //The application can safely allocate memory.
        break;
    case MemoryState.ApproachingLimit:
        // The application should minimize memory allocation.
        break;
    case  MemoryState.Critical:
        // The application should free memory as soon as possible
        // until the memory state changes.
        break;
}

वॉचर सेट अप करें

आपके पास वॉचर सेट अप करने का विकल्प भी है और Memory Advice API, और अपना Watcher फ़ंक्शन रजिस्टर करें को तब कॉल किया जाएगा जब राज्य या तो सीमा पर पहुँचेगा या मेमोरी की स्थिति (लेकिन 'ठीक है' स्थिति के लिए नहीं). उदाहरण के लिए, यहां दिया गया कोड वॉचर बनाता है और हर दो सेकंड में, Memory Advice API से जुड़ी सूचना का अनुरोध करता है:

MemoryAdviceErrorCode errorCode = MemoryAdvice.RegisterWatcher(2000,
        new MemoryWatcherDelegateListener((MemoryState state) =>
    {
        switch (memoryState)
        {
            case MemoryState.ApproachingLimit:
                // The application should minimize memory allocation.
                break;
            case  MemoryState.Critical:
                // The application should free memory as soon as possible
                // until the memory state changes.
                break;
        }
    })
);

if(errorCode == MemoryAdviceErrorCode.Ok)
{
    Debug.Log("Memory Advice watcher registered successfully");
}

अगला कदम क्या है

हमारा Unity सैंपल प्रोजेक्ट डाउनलोड किया जा सकता है जो मेमोरी आवंटित करने और खाली करने के लिए एक सरल यूज़र इंटरफ़ेस (यूआई) उपलब्ध कराता है और मेमोरी की स्थिति पर नज़र रखने के लिए Memory Advice API.

खास जानकारी वाला पेज देखें अन्य संसाधन और रिपोर्टिंग से जुड़ी समस्याओं के बारे में बताया जाता है.