क्लाइंट के लिए मैंने iOS + Android
ऐप को उपयोगकर्ता इंटरफ़ेस के लिए Cordova (PhoneGap)
का उपयोग करके विकसित किया है। अब, इस ऐप के अपडेट के रूप में, मैं एक गेम जोड़ने का प्रयास कर रहा हूं जो हक्स में लिखा गया था। मूल रूप से गेम Flash target
के लिए लिखा गया था, लेकिन मैंने Android and iOS
के लिए C++
लक्ष्यों के साथ काम करने के लिए इसे अद्यतन किया है।आईओएस ऐप से हैक्स चलाना - hxRunLibrary() त्रुटि
एंड्रॉइड पर गतिविधियों का उपयोग करके Cordova
ऐप के साथ इसे एकीकृत करना आसान था (हैक्स भाग एक अलग गतिविधि के रूप में चलता है), लेकिन मुझे आईओएस पर एक समान परिणाम प्राप्त करने में कुछ परेशानी हो रही है।
अब तक मैंने अपने प्रोजेक्ट में सभी hxcpp
जेनरेट कोड शामिल करने का प्रयास किया है (उसी तरह एनएमई जब आप "एनएम बिल्ड आईओएस" करते हैं तो एक्सकोड प्रोजेक्ट सेट करता है), और मैं अपने कोड से hxRunLibrary()
पर कॉल कर रहा हूं मैं खेल को चलाने के लिए चाहता हूँ।
*** Assertion failure in void UIApplicationInstantiateSingleton(Class)(), /SourceCache/UIKit_Sim/UIKit-2380.17/UIApplication.m:2037
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'There can only be one UIApplication instance.'
मुझे लगता है कि यह कुछ करने के लिए हो सकता है:
समस्या यह है कि hxRunLibrary()
अपनी ही UIApplication
उदाहरण है, जो है, तो निम्न त्रुटि के साथ विफल के बाद से मेरी मुख्य एप्लिकेशन पहले से ही एक उदाहरण चल रहा है बनाना चाहते हैं, लगता है एसडीएल के साथ करें, जो हक्स ग्राफिक्स के लिए उपयोग करता है। जो मैं समझता हूं उससे एसडीएल को ऐप के मुख्य कार्य से चलाने की जरूरत है, जिसने कोको के साथ एक संघर्ष बनाया है जिसे मुख्य समारोह से भी चलाने की आवश्यकता है।
क्या इसके आसपास कोई आसान तरीका है? मैंने hxcpp स्रोतों में देखा है, लेकिन UIApplication
संबंधित कोड, या एसडीएल के लिए कोई एंट्री कोड नहीं ढूंढ पाया।
शायद कोई मुझे सही दिशा में इंगित कर सकता है। धन्यवाद!