2015-04-17 5 views
5

क्या ओपनजीएल संदर्भ खो जाने के बाद अधिसूचित होने के लिए कोई कॉलबैक है?लिबजीडीएक्स: कैसे विश्वसनीय रूप से यह निर्धारित करने के लिए कि ओपनजीएल संदर्भ खो गया है या नहीं?

मैंने एप्लिकेशन लिस्टनर/गेम.रेस्यूम() (एंड्रॉइड पर) की कोशिश की है, ऐसे कुछ मामले हैं जहां फिर से शुरू() को कॉल किया जाता है हालांकि संदर्भ खो नहीं गया था। साथ ही कुछ अन्य मामलों जहां संदर्भ खो गया था, लेकिन फिर से शुरू() को बिल्कुल नहीं कहा गया था।

विश्वसनीय रूप से यह निर्धारित करने का सही तरीका क्या है कि libGDX में ओपनजीएल संदर्भ खो गया है या नहीं?

उत्तर

0

प्रबंधित और अप्रबंधित/गतिशील बनावट दोनों के साथ एक ऐप के लिए solution कोई सीधा नहीं है। लेख बताता है कि आप वास्तव में एक ट्रिगर क्यों नहीं प्राप्त कर सकते हैं। मैं AssetManager उपयोग करने के लिए सिफारिश करेंगे ताकि आप अद्यतन अपने ApplicationListener के फिर से शुरू पद्धति पर संपत्ति कर सकते हैं। आपको दोनों लिंक देखना और पढ़ना चाहिए।

0

यह बेहद असंभव है कि आपके पास पहले स्थान पर संदर्भ हानि होगी। अधिक विस्तृत स्पष्टीकरण के लिए this post देखें। लेकिन यहां तक ​​कि यदि आपके पास संदर्भ हानि है (जो केवल एंड्रॉइड 2.x चलाने वाले पुराने एंड्रॉइड डिवाइस पर ही होगी), तो libGDX आपके लिए इसका ख्याल रखेगा और आपके लिए संसाधनों को पुनर्स्थापित करेगा। इसके लिए आपको कुछ भी करने की ज़रूरत नहीं है।

यह संभावना है कि आप किसी भी तरह से "सोचें" कि आपको संदर्भ हानि हो रही है, जबकि वास्तव में आपको एक और समस्या है। उदाहरण के लिए, लोगों के लिए यह सोचने का सबसे आम कारण है कि उनके पास संदर्भ हानि है, जब वे static संसाधनों का उपयोग कर रहे हैं। जैसे आलसी प्रारंभिक के साथ सिंगलटन पैटर्न का उपयोग करके।

संकोच, बिना किसी कोड को देखे, यह अनुमान लगा रहा है।

संबंधित मुद्दे

 संबंधित मुद्दे