2011-08-29 14 views
5

के साथ ओपन एप्लिकेशन bundle identifier के साथ हमारे आवेदन से आवेदन खोलना संभव है। मान लीजिए मेरे पास डिवाइस पर दो ऐप्स इंस्टॉल हैं com.test.app1 और com.test.app2 के साथ। क्या मैं अपने ऐप 2 से ऐप 1 खोल सकता हूं।बंडल पहचानकर्ता

मुझे openUrl विधि के बारे में पता है। इसके लिए मुझे info.plist में यूआरएल योजना पंजीकृत करनी है। और फिर मैं निम्नलिखित विधि का उपयोग कर सकता हूं:

[[UIApplication sharedApplication] openUrl:[NSURL urlWithString:@"myApp1://"]]; 

लेकिन अगर मैंने यूआरएल योजना पंजीकृत नहीं की है या पंजीकृत यूआरएल नहीं पता है।

कोई विचार ..?

उत्तर

3

मुझे नहीं लगता कि यह संभव है।

+0

क्या आप यकीन है कि यह नहीं है ऐसा करने के लिए निजी एपीआई का उपयोग कर सकते हैं मुमकिन..? क्योंकि हम जांच सकते हैं कि डिवाइस में एप्लिकेशन इंस्टॉल है या नहीं, बंडल पहचानकर्ता के साथ। तो मैं सोच रहा था कि इसे खोलने के लिए कुछ विधि हो सकती है। –

+0

मुझे नहीं लगता कि एक ऐप्पल अनुमोदित तरीका मौजूद है। – Akshay

+0

@ अक्षय सही है, यह संभव नहीं है। –

0

यूआरएल योजनाओं का उपयोग करना संभव है।

+0

मुझे पता है कि यह यूआरएल योजना के साथ संभव है लेकिन मैं जानना चाहता हूं कि यह बंडल पहचानकर्ता का उपयोग कर संभव है? ? यदि मेरे पास यूआरएल योजना रजिस्टर नहीं है तो ऐप खोलना संभव है। –

2

आप openUrl कॉल का उपयोग कर सकते हैं, लेकिन सफल होने के लिए आपको अपने प्रोजेक्ट की xy-Info.plist फ़ाइल में कुछ मान जोड़ना होगा।

enter image description here

कर लेने के बाद कि आप तो कॉल कर सकते हैं:

[[UIApplication sharedApplication] openUrl:[NSURL urlWithString:@"xingipad://"]];

5

आपको लगता है कि

Class LSApplicationWorkspace_class = objc_getClass("LSApplicationWorkspace"); 
NSObject * workspace = [LSApplicationWorkspace_class performSelector:@selector(defaultWorkspace)]; 
BOOL isopen = [workspace performSelector:@selector(openApplicationWithBundleID:) withObject:@"com.apple.mobilesafari"]; 
+0

बहुत बहुत धन्यवाद! आईओएस 11 पर काम करता है, और यूआरएल योजना जानने की जरूरत नहीं है। – DmitryKanunnikoff

+0

सिवाय इसके कि आपको कभी भी निजी एपीआई का उपयोग नहीं करना चाहिए। – ekscrypto

+0

@ekscrypto लेकिन मुझे लगता है कि यह आवश्यकताओं का मिलान करने का एकमात्र तरीका है। और वैसे, हमने ऐपस्टोर को इस कोड के साथ सफलतापूर्वक ऐप अपलोड किया। –

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