एंटरप्राइज़ ऐप परिनियोजन iOS 7.1 पर काम नहीं करता है


317

हम itms-services://URL का उपयोग करके एंटरप्राइज़ खाते के माध्यम से ऐप्स वितरित करते हैं । यह हमेशा ठीक काम किया है, लेकिन हमारे iPad पर iOS 7.1 बीटा को स्थापित करने के बाद इसे स्थापित करने से इंकार कर दिया। इसके बजाय हम सिर्फ जेनेरिक Cannot connect to example.comसंदेश प्राप्त करते हैं जो कि आईओएस को ऐप को डाउनलोड करने में किसी प्रकार की समस्या होने पर अनजाने में प्रदर्शित करता है।

मैं SO पर, Google पर या 7.1 रिलीज़ नोट्स में यह बताने में असमर्थ रहा हूं कि समस्या का कारण क्या हो सकता है।


1
क्या इसमें बिल्ड सर्वर भी शामिल है जो Mavericks सर्वर का हिस्सा है?
दान

यह हमारे लिए हमारे ओएस एक्स सर्वर पर भी टूट गया था।
टॉफाह

शायद यह teratotech.com/blog/…
HelmiB

जवाबों:


330

मैंने iPad को कंप्यूटर से कनेक्ट करने और XCode ऑर्गनाइज़र के माध्यम से कंसोल को देखने की समस्या को पाया, जबकि ऐप को इंस्टॉल करने की कोशिश की। त्रुटि का पता चला:

गैर- https मेनिफ़ेस्ट URL लोड नहीं किया जा सका: http://example.com/manifest.plist

पता चला है कि iOS 7.1 में, manifest.plistफ़ाइल का URL HTTPS होना चाहिए, जहाँ हम HTTP का उपयोग कर रहे थे। URL को HTTPS में बदलने से समस्या हल हो गई।

अर्थात

itms-services://?action=download-manifest&url=http://example.com/manifest.plist

हो जाता है

itms-services://?action=download-manifest&url=https://example.com/manifest.plist

मुझे लगता है कि आपके पास प्रश्न में डोमेन के लिए एक वैध एसएसएल प्रमाणपत्र होना चाहिए। हमने पहले ही कर दिया था लेकिन मुझे लगता है कि आपके पास इसके बिना मुद्दे होंगे।


5
आप अपनी वेबसाइट के लिए स्व-हस्ताक्षरित एसएसएल प्रमाणपत्र बना सकते हैं, अपने डिवाइस पर प्रमाणपत्र को विश्वसनीय बनाने के लिए आईफोन कॉन्फ़िगरेशन उपयोगिता का उपयोग करके एक प्रोफ़ाइल बनाना न भूलें।
निर्दल

1
@SantaClaus क्या आपने जाँच की है कि "itms-services: //" वाले लिंक में https: // है और http: // नहीं है? इसके अलावा, जाँच करें कि आपके पास HTAPS के साथ IPA Url भी है।
Niralp

3
मुझे @Niralp जैसी ही परेशानी हो रही है। मैं अपने अपाचे सर्वर को स्व-हस्ताक्षरित एसएसएल प्रमाणपत्र के साथ सेटअप करता हूं। सर्वर SSL के साथ ठीक काम कर रहा है, लेकिन OTA लिंक अभी भी काम नहीं करते हैं और ऊपर बताई गई त्रुटि देते हैं। मैंने iOS डिवाइस पर प्रमाणपत्र स्थापित किया, लेकिन इससे भी कोई फर्क नहीं पड़ा। कोई विचार?
टोफाह

5
मैंने अपना प्रमाणपत्र प्राधिकरण बनाया और इसके साथ वेब सर्वर एसएसएल प्रमाणपत्र पर हस्ताक्षर किए। Apple Apple कॉन्फ़िगरेशनकर्ता आप एक प्रोफ़ाइल बना सकते हैं जो इस CA को विश्वसनीय के रूप में चिह्नित करता है। उसके बाद स्थापना अपेक्षित रूप से काम करती है।
मोनोबोनो

1
यह ध्यान देने योग्य है कि अभिव्यक्त.प्लिस्ट के भीतर मौजूद URL को HTTPS होने की आवश्यकता नहीं है। केवल ITMS URL को HTTPS
Brody Robertson

233

इंगोन्ती सही है।

  1. ड्रॉपबॉक्स में अपना ऐप अपलोड करें।
  2. App.plist का साझा लिंक प्राप्त करें, जैसे https://www.dropbox.com/s/qgknrfngaxazm38/app.plist
  3. की जगह www.dropbox.comके साथ dl.dropboxusercontent.comकड़ी में, जैसे https://dl.dropboxusercontent.com/s/qgknrfngaxazm38/app.plist
  4. ड्रॉपबॉक्स शेअरबल लिंक जैसे कि "? Dl = 0t" पर किसी भी पैरामीटर को हटा दें ( एंटरप्राइज़ ऐप पर कार्लोस एगुइरे ट्रेडेको के अनुसार iOS 7.1 और मेरे अपने अनुभव पर काम नहीं करता है)।
  5. के download.htmlरूप में स्वरूपित लिंक के साथ एक फ़ाइल बनाएँ<a href="itms-services://?action=download-manifest&url=https://dl.dropboxusercontent.com/s/qgknrfngaxazm38/app.plist">INSTALL!!</a>
  6. अपने download.htmlड्रॉपबॉक्स पर अपलोड करें
  7. फिर से, https://www.dropbox.com/s/gnoctp7n9g0l3hx/download.html जैसे download.html का एक साझा लिंक प्राप्त करें , और किसी भी पैरामीटर को हटा दें।
  8. बदलें www.dropbox.comके साथ dl.dropboxusercontent.comकी तरह है, साथ ही दूसरी कड़ी में https://dl.dropboxusercontent.com/s/gnoctp7n9g0l3hx/download.html

अब, https://dl.dropboxusercontent.com/s/gnoctp7n9g0l3hx/download.htmlअपने डिवाइस पर जाएँ , आप पहले की तरह ऐप इंस्टॉल कर सकते हैं।

क्या अद्भुत दुनिया है!


4
इससे मेरी बेकन बच गई! धन्यवाद धन्यवाद धन्यवाद!
बेंटफोर्ड

13
धन्यवाद ... मैं Apple का बहुत बड़ा प्रशंसक हूं, लेकिन आजकल उससे नफरत करना शुरू कर रहा हूं .. इन बेवकूफी भरी बातों से मेरा समय बर्बाद होता है ...
कार्तिक

1
मैंने ऊपर के सभी चरण किए। मैं DanM जैसे एक ही मुद्दे का सामना कर रहा हूँ। डाउनलोड शुरू होता है लेकिन कुछ सेकंड के बाद, "... इस समय डाउनलोड नहीं किया जा सका" अलर्ट आता है।
alper_k

1
? "कर सकते हैं dl.dropboxusercontent.com को connecto नहीं" जहाँ <a href = "itms-सेवाओं को स्थापित करने की कोशिश कर रहा:: मैं इस त्रुटि मिल रही है // कार्रवाई = डाउनलोड-प्रकट & amp; url = dl.dropboxusercontent.com/s/56ny312cwdacho7 /xxxxx.plist > https
नैनो

1
मैं मिल गया यह .Previously मैं अपने निजी फ़ोल्डर में फ़ाइलें बचाया, फिर मैं जनता के लिए उन बदल फ़ोल्डर .Do भूल नहीं सार्वजनिक फ़ोल्डर .Cheers Oldman में फ़ाइलों को डाल करने के लिए
Hariprasad.J

72

मार्क पार्नेल के उत्तर के आगे, इसके चारों ओर जाने का एक त्वरित-गंदा तरीका है, मैनिफ़ेस्ट प्लिस्ट को ड्रॉपबॉक्स में डालना, और फिर ड्रॉपबॉक्स वेब इंटरफ़ेस का उपयोग करके इसे एक सीधा https लिंक प्राप्त करना है ('शेयर लिंक' -> ' लिंक प्राप्त करें '->' डाउनलोड ')।

वास्तविक आईपीए जहाँ भी आप हमेशा से सेवा कर सकते हैं वहीं रह सकते हैं। आपको itms-servivces URL की क्वेरी में डालने से पहले plist के URL को URL-एनकोड करना होगा (हालाँकि% 3 डी के साथ किसी भी & s की जगह काम कर सकता है)।

एक नकारात्मक पक्ष यह है कि इंस्टॉल डायलॉग अब "dl.dropbox.com" को [जो भी] "इंस्टॉल करना चाहता है, पढ़ेगा।


मैंने ऐसा नहीं सोचा था! धन्यवाद!
सांता क्लॉज

मान URL (एन्कोडेड) प्राप्त करने के लिए बहुत थोड़ा सा लिया, लेकिन अंत में यह काम करना शुरू कर दिया। धन्यवाद!
डेविड डनहम

चतुर समाधान: D धन्यवाद!
मोबाइलग्यूई

माइक बहुत बहुत धन्यवाद, आखिरकार यह काम किया! Lifesaver!
adamteale

मैंने इसके साथ मदद करने के लिए एक उपकरण बनाया: otter-ota.herokuapp.com । यह स्वचालित रूप से आपके ड्रॉपबॉक्स शेयर यूआरएल को समायोजित करेगा, एक प्लिस्ट उत्पन्न करेगा (चूंकि xcode अब ऐसा नहीं करता है?) और आवश्यक इटम्स लिंक और एचटीएमएल बनाएं। यदि आप चाहें तो यह लैंडिंग पृष्ठ भी होस्ट कर सकता है।
सूप

36

यह सच है, आगे जाकर आपको iOS7.1 के साथ आगे जा रहे https पर सभी OTA तैनाती करने की उम्मीद है। यह दस्तावेज़ नहीं करने के लिए Apple पर शर्म आती है।

आप में से जो लोग ड्रॉपबॉक्स पर भरोसा करने या एक प्रमाण पत्र के लिए नकद बाहर निकालने की तुलना में बेहतर इन-हाउस समाधान की तलाश कर रहे हैं, उनके पास एक समाधान हो सकता है यदि आप यहां टिप # 5 में उल्लिखित चरणों का पालन करते हैं: http: // ब्लॉग। httpwatch.com/2013/12/12/five-tips-for-using-self-signed-ssl-certificates-with-ios/

इसका सार यह है:

  • अपना स्वयं का CA प्राधिकरण प्रमाणपत्र बनाएं जिसे आप उस उपकरण पर स्थापित कर सकते हैं जो पूरी तरह से विश्वसनीय है (मैंने इसे केवल ईमेल करके स्थापित किया है)
  • रूट सर्टिफिकेट के खिलाफ कुंजी / सेर जोड़ी बनाएं और इसे अपने सर्वर पर इंस्टॉल करें
  • सुनिश्चित करें कि आपका वेबसर्वर सीए अथॉरिटी रूट सर्टिफिकेट से मेल खाने वाली कुंजी / सेर जोड़ी का उपयोग करता है
  • इस बिंदु पर आपको अपने ऐप्स को हमेशा की तरह https पर स्थापित करने में सक्षम होना चाहिए
  • यह सब उन OSX पर पूरा किया जा सकता है, जो पहले से ही डिफ़ॉल्ट रूप से इंस्टॉल किए गए ओप्सनल का उपयोग कर रहा है

यह केवल एक स्व-हस्ताक्षरित प्रमाण पत्र के रूप में नहीं है, इस समाधान में आप अपने निजी प्रमाणपत्र प्राधिकरण के रूप में भी काम कर रहे हैं। यदि आपका रूट सर्टिफिकेट जो आपके Apple डिवाइस पर स्थापित है, भरोसेमंद (हरा) के रूप में चिह्नित नहीं है, तो कुछ गलत है। इसे खत्म करो।

यह बिल्कुल काम करता है।

अपडेट: 3/13/2014 - मैंने एक छोटी कमांड लाइन उपयोगिता प्रदान की है जो इस पूरी प्रक्रिया को सरल बनाती है। आप इसे यहां प्राप्त कर सकते हैं: https://github.com/deckarep/EasyCert/releases


1
बहुत अच्छा। सारांश और सीएल उपकरण के लिए धन्यवाद।
एलेक्स ज़ाटावोन

मैं बस एक घंटे बिताए इस बिट बाहर लगा। आपके CA प्रमाणपत्र के लिए 8192 बिट कुंजी का उपयोग करना विफल हो जाएगा। iOS आपके प्रमाणपत्र को आयात करेगा, लेकिन कभी भी इसका कारण उस पर भरोसा नहीं करेगा। 4096 बिट CA कुंजी काम करती है।
पन्ना।

1
@EmeraldD। कोड में कोई भी जगह नहीं है: github.com/deckarep/EasyCert/blob/master/EasyCert.go जो 8192 बिट कुंजी का उपयोग करता है। वास्तव में, टूल उन कुंजियों का उपयोग करता है जो 2048 हैं जैसे कि लेख प्रदर्शित करता है। क्षमा करें आपने समय खो दिया।
राल्फ कार्वे

@ZhaoXiang मैं इसे जोड़ सकते हैं। क्या आप यहां कोई समस्या दर्ज करना चाहेंगे: github.com/deckarep/easycert/issues और यदि संभव हो तो उन सभी आदेशों को पोस्ट करना जो आप सभी फाइलों को आवश्यकतानुसार परिवर्तित करने के लिए उपयोग करते थे।
राल्फ कार्वे

1
यह वास्तविक उत्तर है लोग, +1 :))
Tech_Intelliswift

33

मुझे वही समस्या थी और हालाँकि मैं पहले से ही एक एसएसएल सर्वर का उपयोग कर रहा था, बस लिंक को बदलकर https काम नहीं कर रहा था क्योंकि एक अंतर्निहित समस्या थी।

यहां छवि विवरण दर्ज करें छवि के लिए यहां क्लिक करें

उस हाइलाइट किए गए बिट ने मुझे बताया कि हमें प्रमाण पत्र पर भरोसा करने का विकल्प दिया जाना चाहिए, लेकिन चूंकि यह ऐप स्टोर है, इसलिए सफारी के माध्यम से काम करना जो वसूली सुझाव प्रस्तुत नहीं करता है।


मैं मौजूदा समाधानों से खुश नहीं था क्योंकि:

  • कुछ विकल्पों के लिए तीसरे पक्ष (ड्रॉपबॉक्स) पर निर्भरता की आवश्यकता होती है
  • हम एसएसएल प्रमाणपत्र के लिए भुगतान करने को तैयार नहीं थे
    • नि: शुल्क एसएसएल प्रमाणपत्र केवल एक अस्थायी समाधान है।

मैंने अंततः एक स्व-हस्ताक्षरित रूट प्रमाणपत्र प्राधिकरण बनाकर और इसका उपयोग करके हमारे सर्वर के एसएसएल प्रमाणपत्र का निर्माण करके एक समाधान पाया ।

मैंने किचेन एक्सेस और ओएसएक्स सर्वर का उपयोग किया, लेकिन प्रत्येक चरण के लिए अन्य वैध समाधान हैं


प्रमाणपत्र प्राधिकरण बनाना

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

  • किचेन खोलें और एक प्राधिकरण बनाने के लिए प्रमाणपत्र सहायक का उपयोग करें

यहां छवि विवरण दर्ज करें

  • अपनी प्रमाणपत्र प्राधिकरण जानकारी भरें

यहां छवि विवरण दर्ज करें

  • मुझे नहीं पता कि यह आवश्यक है, लेकिन मैंने प्राधिकरण पर भरोसा किया।

यहां छवि विवरण दर्ज करें


एक प्रमाणपत्र हस्ताक्षर अनुरोध उत्पन्न करना

हमारे मामले में, सर्वर व्यवस्थापक द्वारा प्रमाण पत्र पर हस्ताक्षर करने के अनुरोध उत्पन्न होते हैं। बस यह एक फ़ाइल है जो पूछता है "क्या मेरे पास मेरी साइट के लिए इस जानकारी के साथ एक प्रमाण पत्र हो सकता है"।

  • इसके बाद आपको अपना प्रमाणपत्र हस्ताक्षर अनुरोध बनाना होगा (मैंने इस बिट के लिए OSX सर्वर के प्रमाणपत्र प्रबंधक का उपयोग किया है

यहां छवि विवरण दर्ज करें

  • अपनी प्रमाण पत्र जानकारी भरें (केवल आस्की चर्या होनी चाहिए! धन्यवाद @ जैस्पर ब्लूज़)

यहां छवि विवरण दर्ज करें

  • कहीं CSR जनरेट करें

यहां छवि विवरण दर्ज करें


प्रमाण पत्र बनाना

प्रमाणपत्र प्राधिकारी के रूप में फिर से कार्य करना, यह तय करना आपके ऊपर है कि जिस व्यक्ति ने आपको सीएसआर भेजा है वह वास्तविक है और वे किसी और के होने का नाटक नहीं कर रहे हैं। वास्तविक अधिकारियों के पास ऐसा करने के अपने तरीके हैं, लेकिन चूंकि आप उम्मीद से काफी आश्वस्त हैं कि आप आप हैं, इसलिए आपका सत्यापन काफी निश्चित होना चाहिए :)

  • किचेन एक्सेस पर वापस जाएं और दिखाए गए अनुसार "क्रिएट ए सर्टिफिकेट .." विकल्प खोलें

यहां छवि विवरण दर्ज करें

  • अपने सहेजे गए CSR को इंगित बॉक्स में खींचें

यहां छवि विवरण दर्ज करें

  • "मुझे इस अनुरोध बटन के लिए डिफ़ॉल्ट को ओवरराइड करने दें" पर क्लिक करें

यहां छवि विवरण दर्ज करें

  • मुझे वैधता अवधि बढ़ाना पसंद है।

यहां छवि विवरण दर्ज करें

  • किसी कारण से, हमें कुछ जानकारी फिर से भरनी होगी

यहां छवि विवरण दर्ज करें

  • इस स्क्रीन पर जारी रखें पर क्लिक करें

यहां छवि विवरण दर्ज करें

  • यह सुनिश्चित करें कि आप SSL सर्वर स्वचालन पर क्लिक करें , यह मुझे कुछ सिरदर्द का कारण बना।

यहां छवि विवरण दर्ज करें

  • आप बाकी विकल्पों के माध्यम से जारी रख सकते हैं।

  • मेल ऐप आपको प्रमाण पत्र भेजने का मौका देगा। ईमेल करने के बजाय, इसे राइट क्लिक करें और इसे सेव करें।

यहां छवि विवरण दर्ज करें


प्रमाणपत्र स्थापित करना

अब हमें एसएसएल ट्रैफ़िक के लिए हमारे द्वारा बनाए गए प्रमाणपत्र का उपयोग करने के लिए सर्वर सेट करने की आवश्यकता है।

  • यदि आपकी डिवाइस जिस पर काम कर रही है वह आपका सर्वर है, तो आप पा सकते हैं कि प्रमाणपत्र पहले से ही स्थापित है।

यहां छवि विवरण दर्ज करें

  • यदि नहीं, तो लंबित प्रमाणपत्र पर डबल क्लिक करें और PEM फ़ाइल को खींचें जिसे हमने ईमेल से संकेतित स्थान में सहेजा है। (वैकल्पिक रूप से, आप अपने PEM को कीचेन से निर्यात कर सकते हैं यदि आपने इसे सहेजा नहीं है।)

यहां छवि विवरण दर्ज करें

  • इस नए प्रमाणपत्र का उपयोग करने के लिए अपने सर्वर को अपडेट करें। यदि आप पाते हैं कि नया प्रमाणपत्र "छड़ी" नहीं होगा और फिर से घूमता रहेगा, तो BOLD ITALIC CAPS में थोड़ा पीछे जाएं

यहां छवि विवरण दर्ज करें


उपकरणों की स्थापना

प्रत्येक डिवाइस पर आपको एप्लिकेशन इंस्टॉल करने की आवश्यकता होगी, इस प्रमाण पत्र प्राधिकरण की एक प्रति होनी चाहिए ताकि उन्हें पता चले कि वे उस प्राधिकरण से एसएसएल प्रमाणपत्रों पर भरोसा कर सकते हैं

  • किचेन एक्सेस पर वापस जाएं और अपने प्रमाणपत्र प्राधिकरण को एक .cer के रूप में निर्यात करें

यहां छवि विवरण दर्ज करें

  • फिर मैंने अपने ओटीए एप्लिकेशन के साथ इस फाइल को अपने सर्वर पर रखा, उपयोगकर्ता इस लिंक पर क्लिक कर सकते हैं और प्राधिकरण प्रमाणपत्र डाउनलोड कर सकते हैं। प्रमाणपत्र को सीधे उपयोगकर्ताओं को ईमेल करना भी एक वैध विकल्प है।

यहां छवि विवरण दर्ज करें

  • अपने डिवाइस पर प्रमाणपत्र स्थापित करें।

यहां छवि विवरण दर्ज करें


परीक्षा

  • सुनिश्चित करें कि आपके plist लिंक https हैं

    • कोशिश करो और एक app स्थापित! यह अब काम करना चाहिए। प्रमाणपत्र प्राधिकारी पर भरोसा किया गया है और SSL प्रमाणपत्र उस प्राधिकरण से आया है।

मुझे आपके उत्तर का अंतिम भाग समझ में नहीं आया, क्या इसका मतलब है कि मुझे अपने सर्वर पर .cer फ़ाइल डालनी होगी, उपयोगकर्ता को HTTP के माध्यम से .cer को एचटीटीपीएस के माध्यम से स्थापित करने से पहले डाउनलोड करना चाहिए, क्या मेरी समझ सही है। ?
झाओ जियांग

ध्यान दें कि .cer को HTTP पर होना जरूरी नहीं है क्योंकि सफारी "क्या आप इस प्रमाण पत्र पर भरोसा करना चाहते हैं" इंटरफ़ेस को प्रस्तुत करेगा जो ऐप स्टोर की उपेक्षा करता है।
जेम्स वेबस्टर

1
मैंने कमांड-लाइन टूल का उपयोग करने के लिए इस प्रक्रिया को पूरी तरह से स्वचालित कर दिया है जिसमें केवल दो मापदंडों की आवश्यकता होती है। मेरे उत्तर के बारे में देखें: github.com/deckarep/EasyCert/releases
राल्फ कारावो

मैं Windows सर्वर पर IIS का उपयोग कर रहा हूं, मैंने एक .cer फ़ाइल बनाई है और इसे अपने iPhone पर डाल दिया है, लेकिन यह अभी भी काम नहीं करता है, पता नहीं क्यों। मुझे लगता है कि मैं अब प्रमाणन पर कुछ पैसा खर्च करना चाहता हूं।
झाओ जियांग

1
यह भी ध्यान दें कि जो प्रमाणपत्र डिवाइस पर स्थापित होना चाहिए, वह प्रमाण पत्र है Certificate Authorityऔर स्व हस्ताक्षरित SSL प्रमाणपत्र नहीं है जैसा कि मैंने शुरू में गलती से स्थापित किया है
NSTJ

6

मैं इसकी पुष्टि करता है कि यह काम करता है, लेकिन आपको html और plist को ड्रॉपबॉक्स पर रखना होगा। यह गैर-उद्यम ओटीए के लिए भी काम करता है, यानी आप अपने देव के साथ ऐप साझा करना चाहते हैं। टीम।

मैंने किया:

a) मेरी साइट पर मैंने इस लिंक के साथ एक पेज बनाया:

.. href = "https://dl.dropboxusercontent.com/u//(your DB id) /ipa.html"> मोबाइल एप

b) ड्रॉपबॉक्स पर मैंने एक और HTML पेज लिखा:

.. https://dl.dropboxusercontent.com/u/(your DB id) /MyApp.plist "> MyApp इंस्टॉल करने के लिए टैप करें

ग) ड्रॉपबॉक्स पर पलस्तर चला गया लेकिन इसे अपने पुराने सर्वर (कोई https) के लिए छोड़ कर


7
मुझे html लगाने की जरूरत नहीं थी और यह ठीक काम करने लगता है। बस प्लास्ट ही काफी था।
बेन जी

यह कौन सा प्लास्ट है? क्या यह ऐप्प्लिस्ट या आईपीए फाइलों के निर्माण के दौरान उत्पन्न एक है?
user1872384

3

टर्मिनल खोलें और कमांड चलाएं: कर्ल-आई https: // (.ipa फ़ाइल पथ प्लिस्ट नहीं)

यह आपको बताएगा कि इंस्टॉलर IPA फाइल को देख सकता है या नहीं। यदि आप '-i' के साथ कर्ल कमांड चलाते हैं, तो आपको पूर्ण प्रतिक्रिया दिखाई देगी और यह संभवतः IPA फ़ाइल नहीं है। यह वह प्रतिक्रिया है जो इंस्टॉलर देखता है, इसलिए यदि यह HTTP 200 और IPA को वापस नहीं कर रहा है, तो आपको इसे अपने अंत में वापस करना होगा।

ITMS इंस्टॉलर सफारी से किसी भी संदर्भ को नहीं बचाता है। यदि आप सफारी में एक सुरक्षित पोर्टल में प्रमाणित हैं, तो प्रमाणीकरण कुकीज़ इंस्टॉलर में पास नहीं होती हैं। यानी इंस्टॉलर को प्रमाणीकरण के बिना ऐप को देखने में सक्षम होना चाहिए और यह वह कारण हो सकता है जो आपको 'सर्वर से कनेक्ट नहीं कर सकता' हो।


यह मेरे लिए बहुत मददगार था। धन्यवाद!
स्टेनिस्लाव पानकेविच

आप iPhone में या मैकबुक में टर्मिनल एप्लिकेशन से कमांड चलाने के लिए कह रहे हैं? ऐसा लगता है कि मैं भी इसी मुद्दे का सामना कर रहा हूं।
user867662

2

मुझे वही परेशानी थी और जैसा कि ऊपर बताया गया है।

  • ड्रॉपबॉक्स में प्लिस्ट लगाएं।
  • डाउनलोड फ़ाइल बटन पर, माउस दाएं बटन के साथ दस्तावेज़ की एक छवि के नीचे प्रतिलिपि लिंक कार्रवाई का चयन करें। यह लिंक पहले से ही कुछ params के साथ https://dl.dropboxusercontent.com/s/xyz123/app.plist?stuff=stuff जैसा है ।
  • पैरामीटर निकालें (केवल https और .plist के बीच पता रखें)
  • Url एनकोड के लिए ब्राउज़ करें, उन लिंक में से एक का चयन करें, कॉपी, पेस्ट, निष्पादित करें, फिर परिणामी टेक्स्ट कॉपी किया गया और HTML में पेस्ट किया गया जहां मेरे पास इट्स-सर्विसेज लिंक है। वैसे मेरे पास यह html दो अलग-अलग स्थानों पर है, उनमें से एक वह जगह है जहां आईपीए स्थित है।
  • सुनिश्चित करें कि plist में ipa फ़ाइल के पूर्ण संदर्भ शामिल हैं।

दोनों पेजों ने आईओएस 7.1 के साथ आईफ़ोन में ऐप इंस्टॉल करने के लिए सफलतापूर्वक काम किया

लेकिन, अब आईओएस 7.0x वाले आईफ़ोन ऐप इंस्टॉल नहीं कर सकते हैं।

मैंने एक नया प्रश्न बनाया : उन्नत एडहॉक ऐप परिनियोजन फ्लॉप काम नहीं करता है जो कि पिछले 7.1 पर है

दोनों मुद्दे कसकर संबंधित हैं, और आधिकारिक संदर्भों की कमी से भी बंधे हैं।


2

कुछ अच्छे आदमी ने कक्षा 1 स्टार्टएसएसएल प्रमाणपत्र का उपयोग करके इस मुद्दे को संभाला और अपाचे कॉन्फिगरेशन को साझा किया जो सर्टिफ़िकेट सपोर्ट (किसी भी सर्टिफिकेट के साथ काम करेगा) और मौजूदा * .plist फ़ाइलों में लिंक बदलने के लिए कोड स्वचालित रूप से जोड़ता है। कॉपी करने के लिए बहुत लंबा है, इसलिए यहाँ लिंक है: http://cases.azoft.com/how-to-fix-certificate-is-not-valid-error-on-ios-7/


2

यदि आपके पास AWS S3 है जो एक आकर्षण की तरह भी काम करता है। कुंआ। सापेक्षिक रूप से बोल रहे :-)

AWS में अपने विज्ञापन होक्स के लिए एक बकेट बनाएं, एक इंडेक्स फ़ाइल जोड़ें (यह सिर्फ एक खाली इंडेक्स। Html फ़ाइल हो सकती है) फिर एक क्लाइंट का उपयोग करके जो S3 से कनेक्ट हो सकता है जैसे CyberDuck या कोडा (मैंने कोडा का उपयोग किया - जहां आप चयन करेंगे एक कनेक्शन खिड़की पाने के लिए साइट) फिर संलग्न की तरह कनेक्शन सेट करें:

फिर XCode में अपना एंटरप्राइज तदर्थ बनाएं और सुनिश्चित करें कि आप https://s3.amazonaws.com/your-bucket-name/your-ad-hoc-folder/your-app.ipa को एप्लिकेशन URL के रूप में उपयोग करते हैं , और इसे अपलोड करें अपने नए S3 बाल्टी निर्देशिका के लिए।

आपका itms लिंक मिलान होना चाहिए, अर्थात itms-services: //? क्रिया = डाउनलोड-प्रकट और url = https://s3.amazonaws.com/your-bucket-name/your-ad-hoc-folder/your-app.plist

और वोइला।

यह केवल सामान्य AWS URL के लिए है - मैंने AWS पर कस्टम URL के साथ प्रयास नहीं किया है, इसलिए आपको कुछ चीजें अलग तरीके से करनी पड़ सकती हैं।

मैं जेम्स वेबस्टर के समाधान को काम से ऊपर बनाने की कोशिश करने के लिए दृढ़ था, लेकिन मैं इसे प्लेस्क के साथ काम करने के लिए नहीं मिला।


1

एंटरप्राइज़ वितरण के लिए ड्रॉपबॉक्स का उपयोग करने के विकल्प के रूप में आप एंटरप्राइज़ हस्ताक्षरित एप्लिकेशन के वितरण के लिए टेस्टफ़लाइट का उपयोग कर सकते हैं।

https://www.testflightapp.com/

यह एड-हॉक विकास बनाता है और उद्यम बनाता है दोनों की मेजबानी और वितरण के लिए एक शानदार सेवा है।


1
विडंबना यह है कि Testflight जाहिरा तौर पर एप्पल द्वारा अधिग्रहण कर लिया था techcrunch.com/2014/02/21/...
थंडर खरगोश

1
इसके अलावा, अब जब Apple द्वारा Testflight का अधिग्रहण किया गया था, तो वे Android के लिए समर्थन छोड़ रहे हैं।
ब्रॉडी रॉबर्टसन

1

ड्रॉपबॉक्स के बारे में पिछले उत्तर, मैंने निम्न फ़ाइल ट्री को लागू किया जैसे कि केवल PLIST फाइल को ड्रॉपबॉक्स पर अपलोड करना है:

  1. http में अपने सर्वर पर ipa फ़ाइल अपलोड करें (यहां कोई परिवर्तन नहीं)
  2. http में अपने सर्वर पर प्रोविजनिंग (.mobileprovision) फ़ाइल अपलोड करें (यहां कोई परिवर्तन नहीं)
  3. अपने ड्रॉपबॉक्स में प्लिस्ट फ़ाइल अपलोड करें (URL के पूर्ण होने पर प्लिस्ट फ़ाइल के अंदर कोई परिवर्तन नहीं)
  4. "ड्रॉपबॉक्स के साथ लिंक साझा करें" विकल्प का उपयोग करें जो लिंक को आपके क्लिपबोर्ड पर कॉपी करता है। इस लिंक को आपके HTML फ़ाइल में इट्स-सर्विवेस URL की क्वेरी में भाग www.dropbox.comद्वारा बदलने के बाद कॉपी किया जाना है dl.dropboxusercontent.com। नोट I URL ने @Mike द्वारा सुझाए गए लिंक को इनकोड किया है लेकिन मैं इसे किए बिना परीक्षण नहीं करता। अब itms-services URL की क्वेरी इस तरह दिखनी चाहिए:itms-services://?action=download-manifest&url=https%3A%2F%2Fdl.dropboxusercontent.com%2Fs%2FYourShortDropboxLink.plist

  5. http में अपने सर्वर पर HTML फ़ाइल अपलोड करें। ध्यान दें कि html फ़ाइल में ipa और प्रोविज़निंग फ़ाइल दोनों लिंक हैं।

  6. आपके डिवाइस से आपकी HTML फ़ाइल तक पहुंच और अब आमतौर पर ओटीए द्वारा आईपीए स्थापित किया जा सकता है।

अब से, केवल बीटा ऐप को आपके बीटा टेस्टर को OTA द्वारा अगले ऐप संस्करण प्रदान करने के लिए बदलना होगा। जब तक Apple सुरक्षा नियमों में बदलाव नहीं कर रहा है।

मैं बहुत ही सरल HTML फ़ाइल का उपयोग करने के बाद यहाँ शामिल होता हूँ:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>iPhone app for test</title>
</head>
<body>
<h1>iPhone app for test</h1>
<br/>
<ul>
    <li><a href="http://www.yourdomain.com/with/directories/provision/v.last/yourprovision_adhoc.mobileprovision">
            Install Provisioning File</a></li>
    <li><a href="itms-services://?action=download-manifest&url=https%3A%2F%2Fdl.dropboxusercontent.com%2Fs%2FYourShortDropboxLink.plist">
            Install Application</a></li>
</ul>
</body>
</html>

1
FYI करें, निम्न लिंक का उपयोग किसी URL को एनकोड करने के लिए किया जा सकता है: w3schools.com/tags/ref_urlencode.asp
लिसियरीएन

0

हमारी टीम ad-hoc वितरण के लिए ड्रॉपबॉक्स का उपयोग करती है जो https का उपयोग करती है लेकिन फिर भी हमारा ऐप इंस्टॉल नहीं हो पा रहा था। बहुत परेशानी वाली शूटिंग के बाद हमने महसूस किया कि शीर्षक क्षेत्र की भी आवश्यकता है। जब भी हमने इस फील्ड सफारी के बिना एक लिंक भेजा तो इस लिंक को नजरअंदाज कर दिया और उपयोगकर्ता को इंस्टॉल करने के लिए संकेत नहीं दिया। कभी-कभी त्वरित विकास परीक्षणों के लिए हमने xml में शीर्षक नोड पर छोड़ दिया और इसे आबाद नहीं किया। यदि यह समस्या किसी के लिए भी उपयोगी है, तो सुनिश्चित करें कि आपके .plist में निम्नलिखित नोड्स शामिल हैं:

      ....
     <string>software</string>
    <key>title</key>
     <string>Your App Name</string>
      ...

0

इस पोस्ट को पढ़ने के बाद मुझे अपना ऐप डाउनलोड करने में समस्या हुई। समस्या स्वयं हस्ताक्षरित एसएसएल प्रमाणपत्र के कारण थी।

मैंने इस समस्या का हल ढूंढ लिया है। आपको अपनी प्रमाणपत्र फ़ाइल को वेब पर '.crt' एक्सटेंशन के साथ अपलोड करना होगा और इसे अपने मोबाइल सफारी में टाइप करना होगा। सिस्टम आपसे विश्वसनीय प्रमाणपत्रों की सूची में अपना प्रमाणपत्र जोड़ने के बारे में पूछता है। इस ऑपरेशन के बाद आप अपना एड-हॉक ऐप इंस्टॉल कर पाएंगे।


0

सार्वभौमिक समाधान अपने डिवाइस को मैक से कनेक्ट करना और स्थापना के दौरान क्या चल रहा है, इसका निरीक्षण करना है। मुझे एक त्रुटि मिली:

अंतर्निहित त्रुटि के साथ डाउनलोड प्रकट लोड नहीं कर सका: त्रुटि डोमेन = NSURLErrorDomain कोड = -1202 "स्टोर से कनेक्ट नहीं हो सकता है" UserInfo = 0x146635d0 {NSLocalizedDescription = स्टोर से कनेक्ट नहीं किया जा सकता, NSLocalizedRecoverySuggestion = क्या आप वैसे भी सर्वर से कनेक्ट करना चाहेंगे? NSLocalForce = एक सुरक्षित कनेक्शन स्थापित नहीं किया जा सका। कृपया अपनी दिनांक और समय सेटिंग जांचें। , NSErrorFailingURLStringKey = https://myserver.com/app/manifest.plist , NSUnderlyingError = 0x14678880 "इस सर्वर के लिए प्रमाणपत्र अमान्य है। आप" myserver.com "होने का दिखावा करने वाले सर्वर से कनेक्ट हो सकते हैं, जो आपके काम आ सकता है। जोखिम में गोपनीय जानकारी। ", NSURLErrorFailingURLPeerTrustErrorKey =, NSErrorFailingURLKey =https://myserver.com/app/manifest.plist }

उस त्रुटि की तारीख सेटिंग्स की जाँच करने का भी सुझाव था। किसी कारण से तारीख 1 जनवरी 1970 थी। सही तारीख तय करने से समस्या हल हो गई।


-1

Apter बदलने की कोशिश की itms-services://?action=download-manifest&url=http://....करने के लिए itms-services://?action=download-manifest&url=https://....। यह भी काम नहीं कर सकता। अलर्ट है cannot connect to my domain। मुझे पता चला कि वेबपेज को भी अपडेट करने की जरूरत है।

समस्या मुख्य URL HTTPS के साथ नहीं है, लेकिन पृष्ठ के लिंक में HTML कोड में से कुछ है। वेबपृष्ठ को अपडेट करने के लिए आपको अपने डेवलपर्स की आवश्यकता होगी। मैंने यह भी देखा कि आपके मंचन डोमेन पर एक वैध एसएसएल प्रमाणपत्र नहीं है, इसलिए आपको ड्रॉपबॉक्स स्थापित करने या उसका उपयोग करने की आवश्यकता होगी और यहां लिंक आपके लिए उपयोगी है

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.