2012-10-14 25 views
9

Mam problemy z jak zrobić niestandardowe rozszerzenie pliku otwarte w mojej aplikacji Android poprzez Google Drive UI. Mój plik obecnie otwiera się dobrze poprzez dropbox lub eksplorator plików na Androida. Dysk Google wydaje się uwzględniać tylko typ MIME pliku. Rozszerzenie pliku jest moje (powiedzmy .xyz), a plik jest w środku xml. Chcę, aby plik otwierał się w mojej aplikacji, a nie tylko jakakolwiek aplikacja zarejestrowana do otwierania typów mime text/xml. Jak mogę powiedzieć, że pliki .xyz w google nie powinny być traktowane jak tekst/xml. Podobnie nie chcę, aby moja aplikacja była zarejestrowana do otwierania wszystkich plików tekstowych/xml.Otwórz niestandardowe rozszerzenie pliku z dysku Google na Androida

Przepływ pracy użytkownika końcowego byłby następujący: 1) Otwórz aplikację na Androida na Dysku Google. 2) Wybierz "somefile.xyz" -> Plik zostanie otwarty w mojej aplikacji. Obecnie otwiera się w google przeglądarka dysku xml. 3) Wybierz "otherfile.xml" -> Plik nie zostanie otwarty w mojej aplikacji.

Odpowiedz

1

Okazuje się, że odpowiedź na to pytanie nie można zrobić.

Z plikiem o nazwie .xyz i formatem xml we wnętrzu najlepiej można utworzyć różne filtry zamiarów, aby obsłużyć wszystkie sposoby, w jakie inne aplikacje identyfikują plik. Na przykład umieściłem następujące mimeTypes w moich filtrach zamiarów.

  • Google Drive - text/xml
  • ICS Gmail - text/plain
  • Jellybean Gmail - application/octet-stream
+0

Mam ten sam problem z uzyskaniem niestandardowego pliku, który zostanie rozpoznany przez moją aplikację z Dysku, i nie jestem w stanie uzyskać dla mnie odpowiedzi. Czy mógłbyś udostępnić pełny przykład użytego filtru zamiany? Dzięki, jeśli możesz! – u2tall

+0

Witam @ Natanie: Czy możesz wyjaśnić to na kilka przykładów? Mam problem z powyższym problemem w mojej aplikacji.Chcę uzyskać rozszerzenie nazwy pliku udostępnianej przez Dysk Google do mojej aplikacji. – Rotomac17

0

Możesz zapisywać swoje pliki do prywatnego katalogu aplikacji, to nie będą dostępne przez jakikolwiek inny aplikacji

widzieć przez ten link, jak to zrobić

http://developer.android.com/training/basics/data-storage/files.html

Context.MODE_PRIVATE i getFilesDir() może ci pomóc.

Jeśli chcesz, aby inne aplikacje zrobiły coś dla Ciebie i zwróciły wynik do aplikacji Przejdź dalej.

http://developer.android.com/training/basics/intents/sending.html

lub

http://developer.android.com/training/basics/intents/filters.html

+0

Chcę pozwolić użytkownikowi zarządzanie plikami za pośrednictwem różnych chmurze aplikacje. Moja aplikacja nie tworzy plików, po prostu otwiera istniejące pliki. Moje pytanie brzmi: jak sprawić, by dysk google otwierał plik .xyz w mojej aplikacji. – Nathan

+0

zobacz poprawioną odpowiedź – Javanator

+1

Zaktualizowałem mój wpis. Nie chcę, aby moja aplikacja coś robiła, druga aplikacja musi widzieć, że moja aplikacja ma otwierać pliki .xyz. – Nathan

Powiązane problemy