2011-05-04 10 views
5

ग्रीटिंग्स,स्वचालित रूप से जेनरेट किए गए आईओएस ऐप्स को कैसे कोडित करें?

मैं एक वेब सर्वर स्क्रिप्ट लिखने की प्रगति में हूं जो आपको कस्टम आईओएस ऐप्स (मूल रूप से लोगो और कुछ अन्य चीजों का आदान-प्रदान) बनाने की अनुमति देता है। वेब सर्वर पहले अपलोड किए गए "खोल" .ipa को अनुकूलित करता है और पूरे कंटेनर को उपयोगकर्ता के ब्राउज़र पर भेजने के लिए फिर से ज़िप करता है। यही है: हम वेब सर्वर पर पहले अपलोड किए गए .ipa को कस्टमाइज़ करते हैं और उपयोगकर्ता को ऐप स्टोर में सबमिट करने के लिए डाउनलोड करते हैं।

अगला चरण पूरे .ipa को फिर से कोडित करना होगा - क्योंकि हमने .IPA सामग्री को बदल दिया है और उपयोगकर्ता को अपनी पहचान पहचान का उपयोग करना चाहिए - ताकि वह वास्तव में इसे ऐप स्टोर पर अपलोड कर सके।

जो मैं समझता हूं, वहां से एक "कोड स्रोत" फ़ाइल है जिसमें बंडल में प्रत्येक संसाधन फ़ाइल के लिए कुछ प्रकार का हैश होता है, और निष्पादन योग्य में कुछ प्रकार के एम्बेडेड हस्ताक्षर भी होते हैं। इन्हें उत्पन्न करने के लिए, आपको उपयोगकर्ता के कंप्यूटर पर "कोडइन" उपयोगिता का उपयोग करना होगा, फिर ऐप स्टोर में सबमिट करने के लिए एप्लिकेशन लोडर का उपयोग करना होगा। अब तक सही है?

क्या मैं पता लगाने के लिए कोशिश कर रहा हूँ है:

  1. वहाँ, इतना है कि वह किसी भी नहीं है (उपयोगकर्ता पहले से अपने प्रमाण पत्र अपलोड होने के साथ) सर्वर पर .ipa codesign का कोई तरीका है करने के लिए अतिरिक्त काम?
  2. यदि 1 संभव नहीं है, तो क्या कोई ऐसा उपकरण है जो बिना किसी परेशानी के .ipa को फिर से कोड करने की अनुमति देता है? एक्सकोड को कुछ प्रोजेक्ट सेटअप काम की आवश्यकता होती है ताकि कोड हस्ताक्षर करने के लिए थोड़ा सा किया जा सके - यदि संभव हो तो।
  3. क्या उपयोगकर्ता के लिए .ipa फ़ाइलों को कोड करने का कोई वैकल्पिक तरीका है - संभवतः हाथ से इसे मैन्युअल रूप से किए बिना?

अग्रिम धन्यवाद!

उत्तर

3

मुझे अपने स्वयं के प्रश्न का उत्तर देना पसंद नहीं है, लेकिन मैं इसे इतनी देर बाद बंद करना चाहता हूं।

हम कई अलग-अलग ऐप्स की पीढ़ी को कम करने के लिए एक्सकोड के लक्ष्यों और योजनाओं का उपयोग करके समाप्त हो गए। चूंकि हमारे पास ऐप वेरिएंट की उचित संख्या है, इसलिए यह अभी ठीक है।

कोड हस्ताक्षर एक गड़बड़ है और ऐप्पल लगातार इसके पीछे तकनीकी प्रक्रिया को बदलता है - इसलिए यह एक चलती लक्ष्य है और इसमें कई हैकिंग और परीक्षण-और-त्रुटि कार्य की आवश्यकता है।

+0

बैडकैट, मैं वर्तमान में आपकी परियोजना के समान कुछ कर रहा हूं, और सोच रहा था कि क्या आप कुछ अंतर्दृष्टि साझा कर सकते हैं। – KING

+0

बाहर निकलता है कि अंत में मैं 'codeign' कमांड लाइन टूल का उपयोग करने का एक तरीका ढूंढने में कामयाब रहा।मुख्य मुद्दा आईपीए संग्रह को ठीक से अनजिप/ज़िप नहीं कर रहा था, जिससे टूटी हुई सिम्लिंक और डिवाइस पर कोड हस्ताक्षर और स्थापना के दौरान अंततः त्रुटियों में कमी आई। मैं अंततः इसके लिए एक ब्लॉग पोस्ट/गाइड लिख सकता हूं। – BastiBen

+0

हां, कोड्सिन कमांड लाइन उपकरण काम करता है (इसका उपयोग कर रहा है)। मेरे पास समस्या प्रावधान प्रोफ़ाइल के साथ है। मैं कोड सिग्नलिंग के बिना एक .app फ़ाइल बना सकता हूं और प्रोविजनिंग प्रोफाइल का उपयोग किए बिना, और बाद में मैं उस .app फ़ाइल में कुछ अनुकूलन करता हूं, ऐप्पल आपके कोडसाइन को एक .app फ़ाइल देता है लेकिन मौजूदा में प्रोविजनिंग प्रोफाइल लगाने के लिए कमांड लाइन टूल नहीं है .app फ़ाइल, जब तक कि आप इसे निर्देशिका में कॉपी न करें। लंबी टिप्पणी के लिए खेद है, लेकिन, मैं इस विषय पर थोड़ी देर के लिए शोध कर रहा हूं, और आपका एकमात्र व्यक्ति जिसकी कम से कम मेरी राय में इस तरह के समान व्यवहार हुए हैं। – KING

4

एक्सकोड कोडरसोडर्स फ़ोल्डर और डिजिटल हस्ताक्षर बनाने के लिए codesign कमांड लाइन उपयोगिता का उपयोग करता है, तो आप एक्सकोड के बाहर एक ऐप बंडल पर हस्ताक्षर करने के लिए इसे स्वयं आमंत्रित कर सकते हैं। यदि सर्वर मैक ओएस एक्स चला रहा था तो आप शायद इसे सर्वर पर स्वचालित कर सकते हैं; यदि आप वास्तव में चालाक हैं तो आप यह समझने में सक्षम होंगे कि openssl (हस्ताक्षर प्रमाणपत्र आदि) का उपयोग करके हस्ताक्षर कैसे बनाएं, सभी मानक सामान हैं)। या, यदि आप देव उपकरण स्थापित करने वाले उपयोगकर्ता पर भरोसा कर सकते हैं, तो उन्हें एक ऐप प्रदान करें जो उनके लिए हस्ताक्षर स्वचालित करता है।

यहां a blog entry describing some of the process है (हालांकि उपयोग का मामला थोड़ा अलग है)।

+0

मैं कस्टम ऐप्स बनाने और आईपीए को स्वचालित रूप से आइकन, स्पलैश, ऐप नाम, संग्रह ऐप को बदलने की तरह, आईपीए प्राप्त करने की तलाश में भी हूं। क्या आप मुझे कुछ जानकारी/ब्लॉग/ट्यूटोरियल दे सकते हैं कि कैसे और कहां से शुरू किया जाए? – Honey

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