2009-01-17 4 views
8

मैं आईफोन के लिए एक ऐप विकसित कर रहा हूं, लेकिन मुझे लगता है कि मैक पर सवाल समान है। अपनी यूआरएल योजना द्वारा लॉन्च होने के बाद आपके आवेदन की स्थिति को डीबग करने का आपका क्या दृष्टिकोण है?यदि आप एक कस्टम यूआरएल योजना का उपयोग शुरू कर चुके हैं तो आप अपने आवेदन को कैसे डीबग करते हैं?

+0

विशेष रूप से मैं AppDelegates अंदर एक ब्रेकपाइंट तक पहुँचने के बारे में बात कर रहा हूँ - (bool) आवेदन:। (UIApplication *) आवेदन handleOpenURL : (NSURL *) यूआरएल विधि? – stigi

उत्तर

21

आपके आवेदन जब यह किसी बाहरी URL से शुरू की है डिबग करने के लिए एक तरीका होता है:

  1. सेट एक ब्रेकपाइंट जहां आप इसे application:handleOpenURL: या application:didFinishLaunchingWithOptions:
  2. Xcode में चाहते हैं, सक्रिय निष्पादन की सेटिंग संपादित करें। डिबगिंग टैब पर, "अगली लॉन्च/पुश अधिसूचना के लिए प्रतीक्षा करें" चेकबॉक्स का चयन करें।
  3. बिल्ड और डीबग। कंसोल आपको एक चेतावनी देगा कि "[AppName] को लॉन्च करने की प्रतीक्षा कर रहा है ... अगली बार लॉन्च होने पर डीबगर [AppName] से जुड़ा होगा।"
  4. कस्टम यूआरएल का आह्वान करके या इसे पुश अधिसूचना भेजकर अपना ऐप खोलें। डीबगर आपके ब्रेकपॉइंट पर रुक जाएगा।
+0

धन्यवाद, कुछ महीने पहले मुझे जवाब मिला, लेकिन इसे यहां पोस्ट करना भूल गया। जवाब, जांचें! – stigi

+0

यह समाधान Xcode 3.x के लिए काम करता है। एक्सकोड 4.x के लिए, देखें: http://stackoverflow.com/a/6451601/135712 –

2

असल में, मुझे लगता है कि यह आईफोन की तुलना में मैक पर काफी अलग होगा क्योंकि आप पहले से ही मैक पर एप्लिकेशन खोल सकते हैं और यूआरएल योजना को कॉल कर सकते हैं, जबकि आईफोन पर आपको एप्लिकेशन खोलने की जरूरत है यूआरएल योजना को कॉल करने के लिए।

आप जो भी कोशिश कर सकते हैं वह आपके यूआई में एक डीबग बटन जोड़ रहा है जो आपको यूआरएल योजना को चल रहे एप्लिकेशन (कॉलिंग -ऑनरल: एनएस वर्कस्पेस पर) से कॉल करने की अनुमति देता है। सिद्धांत में यह लिखा जाना चाहिए कि यूआरएल योजना कब भेजी जाती है या नहीं, आपका ऐप खुला या बंद है या नहीं।

+0

धन्यवाद, मुझे यह भी लगता है कि जाने का रास्ता .. – stigi

2

मैं एक्सकोड 8.2.1 पर हूं और सबसे तेज़ तरीका केवल उत्पाद -> संपादन योजना पर जाना है और नीचे दी गई छवि की तरह "निष्पादन योग्य लॉन्च करने की प्रतीक्षा करें" का चयन करें। जब डीबगिंग शुरू हुई, तो यह ऐप लॉन्च नहीं करेगा, लेकिन "एपीपी" लॉन्च करने के लिए "इंतजार कर रहा है"। एक एक्शन (पुश अधिसूचना पर क्लिक करें) के दौरान, ब्रेकप्वाइंट में शुरू होगा

enter image description here

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

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