2014-08-31 36 views
0

因此,我將特定的文件類型與我的應用程序關聯,並且希望能夠使其打開該類型的文件時打開應用程序,並且能夠從文件中檢索信息。我會如何去做這件事?我知道我可以用以下的文件關聯:從打開相關文件獲取內容Android SDK

<action android:name="android.intent.action.VIEW" /> 
<category android:name="android.intent.category.DEFAULT" /> 
<data android:scheme="file" android:host="*" android:pathPattern=".*\\.shrt" android:mimeType="*/*" /> 

當然的代碼是在一個意圖過濾清單文件,但得到的文件的文本是什麼讓我卡住了。我找不到任何有關該主題的文章(只有一篇文章沒有解決方案)。

回答

0

我是一個特定的文件類型與我的應用程序

沒有關聯,你是不是。您正試圖將文件擴展名與您的應用相關聯。隨着時間的推移,隨着時間的推移,Android將越來越遠離文件以及更多地朝向由ContentProvider服務的內容,從而實現更好的訪問控制。

歡迎您將文件擴展名與您的應用關聯,但您還需要考慮採用合適的MIME類型並支持其他方案(例如,content),或者可能不想考慮文件。

得到該文件的文本是什麼讓我陷入

onCreate(),叫getIntent().getData()獲取文件的Uri。從那裏,你可以撥打電話getPath()Uri獲得文件的路徑(以擺脫file://方案)。此時,它應該是標準的Java文件I/O。

+0

按文件類型我指的是文件擴展名。謝謝你澄清,儘管消息的語氣似乎是消極的。除此之外,謝謝你,我會嘗試這個解決方案。 – user3864563 2014-08-31 18:21:45