iOS UIActivity Sharing
iOS UIActivity Sharing
UIActivity Sharing Simplified
iOS 6 के बाद, थर्ड-पार्टी एप्लिकेशनों को डेटा साझा करने की अनुमति दी गई है जैसे AirDrop का उपयोग करके, जैसा कि Apple के Inter-App Communication guide में विस्तार से व्यक्त किया गया है। यह सुविधा एक सिस्टम-व्यापी शेयर एक्टिविटी शीट के माध्यम से प्रकट होती है जो "शेयर" बटन के साथ इंटरैक्ट करने पर सामने आती है।
सभी इनबिल्ट शेयरिंग विकल्पों की व्यापक गणना UIActivity.ActivityType पर उपलब्ध है। डेवलपर अपने एप्लिकेशन के लिए अनुचित मानते हैं तो वे कुछ शेयरिंग विकल्पों को छोड़ सकते हैं।
डेटा साझा करने का तरीका
ध्यान दिया जाना चाहिए:
साझा किए जा रहे डेटा का प्रकृति।
कस्टम एक्टिविटी का समावेश।
कुछ एक्टिविटी प्रकारों को छोड़ना।
साझा करना UIActivityViewController
का निर्माण करके सुविधा प्रदान किया जाता है, जिसमें साझा करने के लिए इच्छित आइटम पास किए जाते हैं। यह इसे कॉल करके प्राप्त किया जाता है:
डेवलपर्स को UIActivityViewController
को जांचना चाहिए जिसमें यह शुरू किया गया है, उसमें कौन सी गतिविधियाँ और कस्टम गतिविधियाँ हैं, साथ ही किसी निर्दिष्ट excludedActivityTypes
को।
डेटा प्राप्त करने का तरीका
निम्नलिखित पहलुओं में महत्वपूर्ण हैं जब डेटा प्राप्त किया जाता है:
कस्टम दस्तावेज़ प्रकार की घोषणा।
ऐप जो दस्तावेज़ खोल सकता है की दस्तावेज़ प्रकार की निर्देशिका।
प्राप्त किए गए डेटा की मान्यता की पुष्टि।
स्रोत कोड तक पहुंच के बिना, कोई भी Info.plist
की जांच कर सकता है जैसे UTExportedTypeDeclarations
, UTImportedTypeDeclarations
, और CFBundleDocumentTypes
जैसे कुंजी जिससे एक ऐप दस्तावेज़ के प्रकार को संभाल सकता है और घोषित कर सकता है।
इन कुंजियों पर एक संक्षिप्त मार्गदर्शिका Stackoverflow पर उपलब्ध है, जो सिस्टम-व्यापी मान्यता के लिए UTIs की परिभाषा और दस्तावेज़ प्रकारों को आपके ऐप के साथ जोड़ने की महत्वता को उजागर करती है "Open With" संवाद में एकीकरण के लिए।
गतिशील परीक्षण दृष्टिकोण
गतिविधियों को भेजने का परीक्षण करने के लिए, व्यक्ति:
init(activityItems:applicationActivities:)
विधि में हुक कर सकता है ताकि साझा किए जा रहे आइटम और गतिविधियों को कैप्चर किया जा सके।excludedActivityTypes
संपत्ति को अंतर्दृष्टि करके छोड़ी गई गतिविधियों की पहचान कर सकता है।
आइटम प्राप्त करने के लिए, इसमें शामिल है:
एप्लिकेशन के साथ एक फ़ाइल साझा करना अन्य स्रोत से (जैसे, AirDrop, ईमेल) जो "Open with..." संवाद को प्रोत्साहित करता है।
स्थिर विश्लेषण के दौरान पहचानी गई अन्य विधियों के साथ
application:openURL:options:
को हुक करना ऐप के प्रतिक्रिया को देखने के लिए।ऐप की मजबूती का मूल निर्मित फ़ाइल या फजिंग तकनीकों का उपयोग करना।
संदर्भ
Last updated