कैसे मैं एक लाइट एक iPhone app की भुगतान किया संस्करण बनाम निर्माण का प्रबंधन करते हैं?

वोट
62

मैं जहां मैं अपने iPhone एप्लिकेशन की एक लाइट संस्करण के निर्माण पर विचार करना चाहते हैं बात करने के लिए प्राप्त करने के लिए शुरू कर रहा हूँ। मैं वेब है कि इस प्रक्रिया में थोड़ा, अर्थात् के बारे में बात पर कुछ चीजें मिल गया है:

http://developer.apple.com/tools/XCode/XCodeprojects.html

http://www.pacificspirit.com/blog/2009/01/27/building_for_multiple_iphone_targets_in_xcode

क्या मैं विशेष रूप में दिलचस्पी रखता हूँ जो फ़ाइलों मेरी ऐप्लिकेशन के विभिन्न वर्शन में शामिल हैं के रूप में मैं लगातार संशोधित करने और मेरी संस्करण के लिए भुगतान में वृद्धि के प्रबंधन की प्रक्रिया को सरल बनाने है।

14/02/2009 को 19:03
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


7 जवाब

वोट
81

मूल जवाब एप्लिकेशन खरीद में से पहले के दिनों से है। सही जवाब अब एक ही द्विआधारी जहाज और के माध्यम से अपना भुगतान किया संस्करण की पेशकश करने के लिए है एप्लिकेशन उन्नयन में । यह थोड़ा और अधिक कोड है, लेकिन यह एक एकल शिपमेंट है और आपकी रूपांतरण दर शायद बेहतर हो जाएगा।

हालांकि, अगर आप अब भी अपने ऐप के संस्करण करना चाहते हैं:

Xcode कई लक्ष्यों के लिए अच्छा समर्थन हासिल है।

परियोजना मेनू से "नया लक्ष्य ..." का चयन करें। एक और iPhone निष्पादन योग्य (कोको टच आवेदन) आप तो संसाधन के आधार द्वारा एक resouce जो आइटम अपने लक्ष्य में शामिल हैं पर निर्दिष्ट कर सकते हैं जोड़ें। यह केवल आपके भुगतान किया संस्करण में कुछ कोड संकलन शामिल कर सकते हैं।

आप क्या है और "समूह और फ़ाइलें" सूची के शीर्ष लेख (ऊपर एलएचएस) और लक्ष्य सदस्यता को सक्षम करने राइट क्लिक करके वर्तमान लक्ष्य में शामिल नहीं है पर त्वरित दृश्य प्रतिक्रिया प्राप्त कर सकते हैं।

आप एक ही तरह से विभिन्न लक्ष्यों के निर्माण के रूप में आप सिम्युलेटर या iPhone के लिए इमारत के बीच स्विच के बीच स्विच।

निर्माण समय में निर्दिष्ट करने के लिए कैसे एक विशिष्ट वर्ग बर्ताव करता है तो आपको दो बातें कर सकते हैं - वर्ग जो प्रत्येक अपने लक्ष्य के लिए निर्माण कर रहे हैं के दो संस्करणों में शामिल हैं या, आप पूर्व प्रोसेसर के लिए एक निर्माण समय ध्वज सेट कर सकते हैं। फिर "समूह और फ़ाइलें" सूची में लक्ष्य का चयन करें कि लक्ष्य पर "जानकारी प्राप्त"। और "preprocess" के लिए खोज का निर्माण टैब पर जाएँ। आप एक आइटम "प्रीप्रोसेसर मैक्रो" कहा जाता है देखना चाहिए जोड़ने के LITEअपने लाइट लक्षित करने के लिए और एक ही तरीके से जोड़ने के PAIDअपने भुगतान किए गए लक्ष्य के लिए।

अपनी स्रोत फ़ाइल में Thein आप संकलन समय कौन सा संस्करण उपयोग के लिए संकलन कर रहे हैं पर निर्धारित कर सकते हैं #ifdef LITEआदि

आगे भी जा रहे हैं, तो आप एक वैश्विक ध्वज या AppDelegate सदस्य चर #ifdef लाइट के आधार पर निर्धारित किया है और लाइट और भुगतान किए गए एप्लिकेशन कार्यावधि में व्यवहार बदल सकता है। मुझे यकीन है कि मुझे लगता है कि यद्यपि में मूल्य देख नहीं हूँ।

14/02/2009 को 19:59
का स्रोत उपयोगकर्ता

वोट
24

एक डेवलपर के रूप में आप कम से कम कोड संभव (कम कीड़े, कम समय) लिखना चाहते हैं। के रूप में निर्माण संस्करणों वितरित हो जाते हैं आप और अधिक काम करते हैं और अलग परीक्षण निवेश करना होगा।

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

अलग-अलग बनाता है करने के लिए कारण यह सुनिश्चित करें कि नि: शुल्क एक "भुगतान की" संस्करण काट दिया नहीं किया जा सकता है। लोग हैं, जो कोशिश करते हैं और इस तरह के एक सरल सीमा को दरकिनार होगा मुख्य रूप से एक उप जो लोग अपने फोन के भागने के हैं का सेट कर रहे हैं। कोई फर्क नहीं पड़ता कि आप क्या करते अगर आप किसी भी शर्त के तहत अपने पैसे नहीं मिलेगा अन्य की तुलना में वे इसलिए वे यह सिर्फ प्रशंसा दिखाने के लिए खरीदने के wowed कर रहे हैं।

14/02/2009 को 22:30
का स्रोत उपयोगकर्ता

वोट
7

"फ्लावर गार्डन" के निर्माता विवरण पेशेवरों / यहाँ एक लाइट संस्करण बनाने के लिए अलग-अलग तरीके से विपक्ष:

http://gamesfromwithin.com/from-full-to-lite-in-under-an-hour

18/02/2009 को 01:09
का स्रोत उपयोगकर्ता

वोट
3

मैं के साथ सफलता मिली:

ट्यूटोरियल - एक ही Xcode परियोजना iPhone के लिए कई उत्पाद बनाएं http://adeem.me/blog/2009/04/18/tutorial-same-xcode-project-create-multiple-products-for-iphone/

यह क्या रोजर नोलन सवाल करने के लिए अपने जवाब में बताया गया है, लेकिन कदम-दर-कदम स्क्रीन शॉट्स के साथ की बहुत शामिल किया गया।

यह आप को शामिल करने या अपने अनुप्रयोग में कार्यक्षमता को बाहर करने के सी # ifdef के उपयोग करने के लिए अनुमति देता है।

विवरण में से कुछ बिल्कुल सही नहीं थे - क्योंकि Xcode में मतभेद की मुझे यकीन है - लेकिन यह भी हर कदम ऐसा करने का सही / नया तरीका पता लगाने के लिए मुश्किल नहीं था।

ध्यान दें: आप एप्पल के पास जाकर अपने अनुप्रयोग के लाइट संस्करण के लिए एक नई एप्लिकेशन आईडी प्राप्त करना होगा। चरणों ट्यूटोरियल में उल्लिखित Info.plist फ़ाइल है, जो आप शायद infoLite.plist की तरह कुछ करने के लिए नाम बदलने करेंगे की एक प्रतिलिपि बनाने जाएगा - इस फाइल में आप "बंडल पहचानकर्ता" को बदलना होगा इस नए AppID मैच के लिए ।

14/09/2009 को 05:35
का स्रोत उपयोगकर्ता

वोट
2

iPhone 3.0 के साथ, आप एप्लिकेशन के अंतर्गत खरीदी के बजाय का उपयोग करें और है कि एक से अधिक एप्लिकेशन बनाने के लिए बिना पूर्ण कार्यक्षमता अनलॉक करने के लिए अनुमति दे सकते हैं। मैं भी लगता है कि यह लोगों को मुक्त करने के लिए इस से बचने होगा, लेकिन मुझे लगता है कि के बारे में के रूप में यकीन नहीं है।

13/11/2009 को 23:28
का स्रोत उपयोगकर्ता

वोट
1

मैं एक Git शाखा का इस्तेमाल किया। मैं अपने मुख्य अनुप्रयोग शाखाओं और सामग्री का एक समूह को निष्क्रिय करने में कुछ सुधार किया। अब मैं गुरु शाखा में मुख्य रूप से काम करते हैं और लाइट और नवीनतम में विलय जब प्रमुख घटनाओं घटित पर स्विच। बहुत अच्छी तरह से काम करता है।

14/02/2009 को 20:38
का स्रोत उपयोगकर्ता

वोट
0

बेहतर दृष्टिकोण, बस एक ही परियोजना है बजाय कई लक्ष्यों के साथ - अपने ऐप्लिकेशन के प्रत्येक संस्करण के लिए एक। तो लक्ष्य क्या हैं: कई लक्ष्यों

03/06/2015 को 09:56
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more