2011-08-12 11 views

Odpowiedz

16

UIDocumentInteractionController jest twoim przyjacielem.

zasadzie to działa tak:

  1. App 1 rejestrów jako zdolne do obsługi plików typu XYZ
  2. App 2 narzędzia UIDocumentInteractionController i daje użytkownikom opcji "Wyślij plik do app1" (Wierzę, że musi to być aktywowane przez użytkownika)
  3. Aplikacja 1 implementuje -(BOOL)application:openURL:sourceApplication:annotation: i zajmuje się przesyłanym plikiem, który zostanie zapisany w katalogu Documents/Inbox. Stamtąd możesz skopiować plik gdzie indziej, a następnie go zmanipulować, upewniając się, że oczyściłeś się, pozbywając się oryginału zapisanego w folderze Skrzynki odbiorczej.

odniesienia Klasy dostępny here

Podręcznik programowania interakcji Dokument dostępny here

+0

Więc to oznacza, że ​​Apl1 będą w stanie uzyskać dostępu do pliku, wtedy i tylko wtedy, gdy Apl2 na to pozwala, ale runda nie inny sposób (sposób działania systemu operacyjnego Windows). Mam rację? – Lopper

+0

To prawda, plik można wysłać tylko do aplikacji1, aplikacja1 nie może pobrać z aplikacji2. ALE mówiąc, że można spróbować zarejestrować niestandardowy schemat URI, który pozwala aplikacji1 "zażądać" czegoś od app2 i uzyskać app2, aby odpowiednio do tego zareagować. To tylko teoria, której sam nie próbowałem. – Rog

+0

czy można wysyłać wiele plików? - jak wybór wielu zdjęć, które mają być dołączone do wiadomości e-mail w standardowej aplikacji do zdjęć. – Sagrian

3

Jeśli tworzysz obie aplikacje, możesz przechowywać informacje wspólne w pęku kluczy, o ile identyfikatory pakietów są zgodne z tym samym identyfikatorem. Aby uzyskać więcej informacji, patrz here. Oczywiście, jeśli tworzysz obie aplikacje, możesz użyć schematu URL, aby przekazać również dane zakodowane w base64.

Aktualizacja: jak powiedział Rog poniżej, UIDocumentInteractionController jest świetny, ale jest dostępny tylko dla wersji 4.2 i wyższej, więc wycinasz znaczną część użytkowników, jeśli chcesz z niego korzystać.

Powiązane problemy