2011-08-12 12 views
7

मैं एक आईओएस एप्लिकेशन लिख रहा हूं जो एक ही डिवाइस पर किसी अन्य डिवाइस से दूसरे फ़ाइल में सहेजी गई फ़ाइल का रूपांतरण करता है। मैं उसी डिवाइस में फ़ाइलों को एक एप्लिकेशन से दूसरे में कैसे स्थानांतरित कर सकता हूं? ध्यान दें कि फ़ाइलें गैर-पाठक फ़ाइलें हैं।मैं एक ही आईओएस डिवाइस में फ़ाइलों को एक एप्लिकेशन से दूसरे में कैसे स्थानांतरित कर सकता हूं?

उत्तर

16

UIDocumentInteractionController आपका मित्र है।

  • अनुप्रयोग 2 औजार UIDocumentInteractionController और उन विकल्प "APP1 को फ़ाइल भेजने" करने के लिए दे देंगे XYZ प्रकार की फाइलों को संभालने में सक्षम होने के रूप में

    1. अनुप्रयोग 1 रजिस्टरों (:

      मूल रूप से यह इस प्रकार काम करता मेरा मानना ​​है कि इसे उपयोगकर्ता सक्रिय होना है)

    2. ऐप 1 -(BOOL)application:openURL:sourceApplication:annotation: लागू करता है और स्थानांतरित फ़ाइल से संबंधित है जो आपके Documents/Inbox निर्देशिका में सहेजा जाएगा। वहां से आप फ़ाइल को कहीं और कॉपी कर सकते हैं और फिर यह सुनिश्चित कर सकते हैं कि आप इनबॉक्स फ़ोल्डर में सहेजे गए मूल से छुटकारा पाने के द्वारा साफ़ कर लें।

    कक्षा संदर्भ उपलब्ध here

    दस्तावेज़ बातचीत प्रोग्रामिंग गाइड उपलब्ध here

  • +0

    तो इसका मतलब है कि APP1 केवल फ़ाइल का उपयोग करने में सक्षम होंगे तभी App2 यह नहीं इसका उल्टा की अनुमति देता है, लेकिन अगर (जिस तरह से विंडोज ओएस संचालित होता है)। क्या मैं सही हूँ? – Lopper

    +0

    यह सही है, फ़ाइल केवल ऐप 1 पर भेजी जा सकती है, ऐप 1 इसे ऐप 2 से नहीं खींच सकता है। लेकिन यह कहकर, आप एक कस्टम यूआरआई योजना पंजीकृत करने का प्रयास कर सकते हैं जो ऐप 1 को ऐप 2 से कुछ "अनुरोध" करने की अनुमति देता है और उसके अनुसार इसका जवाब देने के लिए ऐप 2 प्राप्त करता है। हालांकि यह केवल सिद्धांत है, मैंने इसे स्वयं नहीं किया है। – Rog

    +0

    क्या कई फाइलें भेजना संभव है? - मानक फ़ोटो ऐप में ईमेल से जुड़ी कई फ़ोटो चुनने की तरह। – Sagrian

    3

    यदि आप दोनों ऐप्स विकसित कर रहे हैं, तो आप कुंजीपटल में साझा जानकारी संग्रहीत कर सकते हैं जब तक कि आपके बंडल पहचानकर्ता एक ही बंडल बीज आईडी के अनुरूप न हों। अधिक जानकारी के लिए here देखें। बेशक, यदि आप दोनों एप्लिकेशन बना रहे हैं, तो आप बेस 64 एन्कोडेड डेटा में पास करने के लिए एक यूआरएल योजना का भी उपयोग कर सकते हैं।

    अपडेट: जैसा कि नीचे बताया गया है, यूआईडी दस्तावेज इंटरैक्शन कंट्रोलर बहुत अच्छा है, लेकिन यह केवल 4.2 और ऊपर के लिए उपलब्ध है, इसलिए यदि आप इसका उपयोग करना चाहते हैं तो आप अपने उपयोगकर्ताओं का एक बड़ा हिस्सा निकाल रहे हैं।

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

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