Jak włączyć udostępnianie plików w mojej aplikacji?

158

Mam aplikację do edycji obrazów, w której użytkownicy mogą stosować efekty do zdjęć. Jak mogę to włączyć, aby użytkownicy mogli zobaczyć moją aplikację w iTunes na karcie Udostępnianie plików, a następnie po prostu przeciągnąć i upuścić zdjęcia do aplikacji?

Niektóre czytniki eBooków, takie jak Stanza, działają w ten sposób i byłaby to fajna opcja. Może ktoś może wskazać samouczek lub zasób, który mówi o tym, jak włączyć i używać tej techniki.

Dumny członek
źródło

Odpowiedzi:

281

Wystarczy ustawić klucz UIFileSharingEnabled( Application Supports iTunes file sharing) na liście informacyjnej aplikacji. Oto link do dokumentacji. Przewiń w dół do części dotyczącej obsługi udostępniania plików.

W przeszłości konieczne było również zdefiniowanie CFBundleDisplayName( Bundle Display Name), jeśli jeszcze go tam nie było. Więcej szczegółów tutaj .

Vin
źródło
57
Dla tych z Was, którzy mieli takie wyzwania jak ja: Aplikacja obsługuje udostępnianie plików iTunes podczas edycji pliku info.plist w Xcode.
LavaSlider
Czy jest jakiś powód, dla którego nie mogło to zadziałać w jednej aplikacji?
Włączyłem
@rraallvv, próbujesz z kompilacją programistyczną czy kompilacją ad-hoc?
Vin,
@rraallvv prawdopodobnie musisz ustawić typy plików ... (typy dokumentów w ramach celu / informacji)
nielsbot
A jeśli ktoś inny wyrywa włosy, nie działa, sprawdź, czy masz więcej niż jedną * Info.plist.
Tony Adams
42

Według Apple Doc :

Obsługa udostępniania
plików Obsługa udostępniania plików umożliwia aplikacjom udostępnianie plików danych użytkownika w iTunes 9.1 i nowszych wersjach. Aplikacja, która deklaruje obsługę udostępniania plików, udostępnia zawartość swojego katalogu / Documents użytkownikowi. Następnie użytkownik może w razie potrzeby przenosić pliki do iz tego katalogu z iTunes. Ta funkcja nie pozwala Twojej aplikacji na udostępnianie plików innym aplikacjom na tym samym urządzeniu; to zachowanie wymaga obiektu stołu montażowego lub obiektu kontrolera interakcji z dokumentem.

Aby włączyć udostępnianie plików w swojej aplikacji, wykonaj następujące czynności:

  1. Dodaj klucz UIFileSharingEnabled do pliku Info.plist aplikacji i ustaw wartość klucza na YES . (Rzeczywista nazwa klucza to „Aplikacja obsługuje udostępnianie plików iTunes”)

  2. Umieść wszystkie pliki, które chcesz udostępnić, w katalogu Dokumenty aplikacji.

  3. Gdy urządzenie jest podłączone do komputera użytkownika, iTunes wyświetla sekcję Udostępnianie plików na karcie Aplikacje wybranego urządzenia.

  4. Użytkownik może dodawać pliki do tego katalogu lub przenosić pliki na pulpit.

Aplikacje obsługujące udostępnianie plików powinny być w stanie rozpoznać, kiedy pliki zostały dodane do katalogu Dokumenty i odpowiednio zareagować. Na przykład aplikacja może udostępniać zawartość wszelkich nowych plików z poziomu swojego interfejsu. Nigdy nie powinieneś przedstawiać użytkownikowi listy plików w tym katalogu i prosić go, aby zdecydował, co zrobić z tymi plikami.

Aby uzyskać dodatkowe informacje na temat klucza UIFileSharingEnabled, zobacz Informacje o kluczu listy właściwości .

Nico
źródło
1
Dlaczego aplikacja nie miałaby przedstawiać użytkownikowi listy plików?
Cutetare
1
@Cuterare: Załóżmy, że chcesz tylko pliki mp3 w katalogu z dokumentami, ale użytkownik umieszcza pliki .pdf, a następnie pozostawiasz je, do użytkownika lub obsługi na końcu. Więc uważaj na to, co robisz z plikami. To odniesienie z dokumentu firmy Apple. Odwiedź adres URL.
Nico
Jak mogę wyeksportować szczegóły dziennika z komputera z systemem Windows?
Vineesh TP
13

Nowy XCode 7 będzie wymagał tylko klucza „UIFileSharingEnabled” w Info.plist. „CFBundleDisplayName” nie jest już wymagane.

Jeszcze jedna wskazówka: nie modyfikuj tylko Info.plist celu „testy”. Główna aplikacja i „testy” mają inną listę Info.plist.

wanyancan
źródło
Cześć. Dodałem „Aplikacja obsługuje udostępnianie plików iTunes” - „TAK” w mojej info.plist. Ale linia jest usuwana automatycznie, kiedy uruchamiam przycisk „Uruchom” w Xcode. Czy nie masz tego samego problemu?
M.Masa
6

Jeśli w plist znajdziesz alfabet, powinno to być „Aplikacja obsługuje udostępnianie plików iTunes”.

Tim
źródło
2

Może to dla was oczywiste, ale podrapałem się przez chwilę w głowę, ponieważ folder nie pojawił się w aplikacji plików. Właściwie musiałem coś zapisać w folderze. możesz to osiągnąć przez

  • zapisywanie niektórych plików w katalogu dokumentów aplikacji
  • przenieś coś z iCloud Drive do swojej aplikacji (w oknie przenoszenia pojawi się folder). Gdy tylko nie będzie już żadnych plików w Twoim folderze, zniknie on z zakładki „Na moim iPadzie”.
iVentis
źródło
Dzięki za dodanie tego. Jedyną inną rzeczą, która wydała mi się myląca, jest to, że po pierwszym włączeniu udostępniania plików i zapisaniu pliku musisz wysunąć i ponownie podłączyć urządzenie, aby coś się pojawiło. Na wypadek, gdyby ktoś inny marnował czas, majstrując przy tym.
Cosworth66
1

W Xcode 8.3.3 dodaj nowy wiersz w .plist z wartością true

Aplikacja obsługuje udostępnianie plików iTunes

oscar castellon
źródło