2010-12-27 3 views
9

Chcę moja aplikacja do otwierania pliku tekstowego z jednego z redaktorów plików zainstalowanych na moim terminalu, ale wciąż otrzymuję ten wyjątek:Intent edycji zwykły plik tekstowy z zainstalowanym edytorem plików (jeśli występują)

ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.EDIT dat=file:///sdcard/folder/file.txt } 

Najpierw pomyślałem, że nie mam zainstalowanego edytora plików, ale jeśli korzystam z menedżera plików ASTRO, mogę otworzyć plik zarówno za pomocą "edytora plików" i "QuickOffice", więc myślę, że problemem jest to, że jestem nie za pomocą odpowiedniego kodu ...

Oto kod

Intent intent = new Intent(Intent.ACTION_EDIT); 
Uri uri = Uri.parse("file:///sdcard/folder/file.txt"); 
intent.setDataAndType(uri, "plain/text"); 
startActivity(intent); 

Co jest bardziej zaskakujące jest to, że jeśli mogę użyć ścieżkę do pliku, który nie istnieje, to wciąż podnosząc ten sam wyjątek ...

Thanks

+2

Co powiesz na "Intencja intencyjna = nowa intencja (intencja.ACTION_VIEW);" ? –

+0

Pomogło to również. Myliłem się z typem MIME i działaniem. Dzięki :) – Pedriyoo

Odpowiedz

13

Typ MIME jest text/plain.

+0

Pracował jak mistrz !! Dzięki, nie widziałem mojego głupiego błędu :-) – Pedriyoo

+0

Nawiasem mówiąc ... Nadal zastanawiam się, dlaczego potrzebuje zestawu typu MIME. Czy nie powinien odgadnąć typ z rozszerzenia pliku? – Pedriyoo

+1

@Pedriyoo: W większości systemów Android nie ma rozszerzenia-> MIME. – CommonsWare