मुख्य सामग्री पर जाएँ
CrossFly 100% ओपन सोर्सGitHub पर फ़ॉलो करें
CrossFlyCrossFly
शुरू करें

यह पृष्ठ पुर्तगाली से मशीन-अनुवादित है और इसमें त्रुटियाँ हो सकती हैं। पुर्तगाली संस्करण प्रामाणिक है।

iOS / iPadOS (RoboVM) 🍎

iOS लक्ष्य के लिए macOS + Xcode आवश्यक है। RoboVM टूलचेन AOT करता है (Java → नेटिव ARM कोड)।

रन करना

gradlew :ios:launchIPhoneSimulator

IOSLauncher एप्लिकेशन बनाता है: new IOSApplication(new Main(true, getCommandline()), configuration)। Device.platform IPHONE या IPAD होगा।

Info.plist — अनुमतियाँ और मेटाडेटा

Android (रनटाइम अनुमति) के विपरीत, iOS पर उपयोग कुंजियाँ Info.plist में जाती हैं:

  • कैमरा, स्थान, Bluetooth, माइक्रोफ़ोन के उपयोग विवरण (अनिवार्य, अन्यथा ऐप अस्वीकृत हो जाता है);
  • आइकन और launch screen।

⚠️ संवेदनशील बिंदु

  • WKWebView: evaluateJavaScript प्रतिबंधित है — WebContainer का JS↔Java ब्रिज Android/डेस्कटॉप की तुलना में अधिक सीमित है।
  • Apple डेवलपर खाता + provisioning profile वास्तविक डिवाइस पर चलाने के लिए आवश्यक हैं (सिम्युलेटर को इसकी आवश्यकता नहीं)।
  • AOT बिल्ड धीमा है — डेस्कटॉप पर विकसित करने और iOS पर केवल मान्य करने का एक और कारण।

सर्वोत्तम अभ्यास

  • सबमिट करने से पहले Info.plist में सभी उपयोग कुंजियाँ भरें (इसी कारण अस्वीकृति सामान्य है)।
  • सिम्युलेटर पर जल्दी परीक्षण करें; वास्तविक डिवाइस को अंतिम मान्यता (provisioning) के लिए छोड़ दें।

सामान्य त्रुटियाँ

  • Info.plist में कोई उपयोग कुंजी छूट जाना (सुविधा एक्सेस करते समय क्रैश, या App Store पर अस्वीकृति)।
  • WKWebView में पूर्ण evaluateJavaScript मान लेना (यह प्रतिबंधित है)।

यह भी देखें

क्या यह पृष्ठ उपयोगी था?