Piszę aplikację na iOS, która wykonuje konwersję pliku zapisanego przez inną aplikację na tym samym urządzeniu na inny format. Jak mogę przesłać pliki z jednej aplikacji do drugiej na tym samym urządzeniu? Zwróć uwagę, że pliki są plikami nietekstowymi.W jaki sposób mogę przesłać pliki z jednej aplikacji do drugiej na tym samym urządzeniu z systemem iOS?
7
A
Odpowiedz
16
UIDocumentInteractionController
jest twoim przyjacielem.
zasadzie to działa tak:
- App 1 rejestrów jako zdolne do obsługi plików typu XYZ
- App 2 narzędzia
UIDocumentInteractionController
i daje użytkownikom opcji "Wyślij plik do app1" (Wierzę, że musi to być aktywowane przez użytkownika) - Aplikacja 1 implementuje
-(BOOL)application:openURL:sourceApplication:annotation:
i zajmuje się przesyłanym plikiem, który zostanie zapisany w kataloguDocuments/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
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
- 1. Jak mogę przenieść dokument między dwiema aplikacjami na tym samym urządzeniu z systemem iOS?
- 2. Aplikacje do telefonów z systemem Windows z tym samym GUID - Tworzenie większej liczby aplikacji z jednej aplikacji
- 3. Wpływ używania LLVM-GCC w celu rozwiązania problemów na urządzeniu drugiej generacji z systemem iOS 4.2.1
- 4. kCLAuthorizationStatusRestricted jest wyświetlany dla jednej z moich aplikacji, ale nie dla innego na tym samym urządzeniu.
- 5. Prześlij wiele aplikacji na iOS z tym samym kodem bazowym
- 6. Jak przesłać dane z jednej czynności do drugiej?
- 7. Wstawianie zbiorcze na urządzeniu z systemem Android
- 8. Jak debugować aplikację Xamarin.iOS na fizycznym urządzeniu z systemem iOS
- 9. Komunikacja między 2 aplikacjami na tym samym urządzeniu iOS/Android z Xamarin
- 10. Jak odtwarzać wideo 360 na urządzeniu z systemem iOS
- 11. . Funkcja .select() nie działa na urządzeniu z systemem iOS.
- 12. Pliki EXE aplikacji WPF i konsoli w tym samym rozwiązaniu
- 13. iPhone - Nie można uruchamiać aplikacji z XCode na urządzeniu z systemem iOS 5.0.1, ponieważ aktualizacja systemu iOS z wersji 5.0
- 14. Jak przejść z jednej gałęzi do drugiej i zamówić?
- 15. Lista wszystkich aplikacji zainstalowanych na urządzeniu z systemem iOS i ich pozycja na ekranie głównym (Springboard)
- 16. W jaki sposób gra stworzona w Unity może działać na urządzeniu z systemem Android?
- 17. Jak przesłać film na YouTube z poziomu aplikacji na iOS?
- 18. Wyłączanie automatycznego odnawiania subskrypcji na urządzeniu z systemem iOS w piaskownicy
- 19. Kopiowanie danych z jednej bazy danych do drugiej w Oracle
- 20. Jak mogę przesłać obraz i dane w tym samym żądaniu z kanciastą i relaksującą?
- 21. Można ręcznie reklamować interfejs Bluetooth MIDI na urządzeniu z systemem iOS, bez aplikacji CABTMIDILocalPeripheralViewController
- 22. Kopiowanie danych blob z jednej tabeli do drugiej na MySQL
- 23. Dostęp do bazy danych sqlite na urządzeniu z systemem Android
- 24. Co może powodować spowolnienie działania aplikacji na Androida na tym samym urządzeniu, na którym działa szybko?
- 25. Programowa zmiana języka na urządzeniu z systemem Android
- 26. Uwierzytelnianie w aplikacji Google Engine z urządzenia z systemem iOS
- 27. Wiele-do-wielu na tym samym stole
- 28. Fałszywe połączenie przychodzące na urządzeniu z systemem Android
- 29. Jak parametryzować opcje menu na urządzeniu z systemem Android?
- 30. Jak mogę odczytać z pliku w tym samym katalogu?
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
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
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