我有一個打開txt文件的活動。每當用戶想要打開一個txt文件,我的應用程序就可以打開它。我的問題是,我如何通過文件的路徑打開我的活動?而且,如何以編程方式接收路徑?總之,除了在清單文件中設置意圖過濾器以允許我的應用程序在單擊該文件後打開一個txt文件時,我還需要做些什麼?接收意向
接收意向
回答
您將需要使用廣播接收器,但不知道您必須使用什麼意圖過濾器。
也許一些嘗試是加入這樣的事情您的清單:
<receiver android:name="MyBroadcastReceiver">
<intent-filter>
<action android:name="android.intent.action.ACTION_VIEW" />
<action android:name="android.intent.action.ACTION_EDIT" />
<action android:name="android.intent.action.ACTION_PICK" />
</intent-filter>
</receiver>
然後你需要創建MyBroadcastReceiver類是這樣的:
public final class MyBroadcastReceiver extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
// Your receiver code here...
}
}
再檢查到的onReceive方法當您嘗試打開文件時收到的意向數據。這樣你就可以知道哪些數據會進入意圖。
希望它有幫助。
謝謝!我認爲會的。 –
我有一個關於註冊這個MyBroadcastReceiver的問題。我是否實例化一個新的IntentFilter以放入registerReceiver()方法?或者有沒有從Manifest文件獲取Intent Filter的方法? –
您可以直接在清單文件中配置意圖過濾器,如上所述。 – Ernesto
您可以使用文件(http://developer.android.com/reference/java/io/File.html)或FileInputStream(http://developer.android.com/reference/java/io/FileInputStream.html)類來保存文件路徑並處理輸入。如果你正在傳遞意圖,你可能會想使用putExtra()方法將一個包含文件名的字符串添加到意圖中,並在另一側檢索它。
我沒有通過一個意圖。我指的是Android系統本身在您點擊要打開的文件時通過的intenet。我必須使用廣播接收器嗎? –
- 1. 意向接收號碼(smsto :)
- 2. 接收意向與活動
- 3. 有多少意向可以接收BroadcastReceiver?
- 4. 無法接收意向數據
- 5. 廣播接收機意向過濾器
- 6. 無法從父活動接收意向?
- 7. 權限拒絕:接收意向
- 8. 從廣播接收器獲取意向
- 9. Android:通過意向接收HTML頁面
- 10. 收到廣播接收方意向後沒有反映變化
- 11. 廣播接收器onReceive未收到意向包
- 12. Android的廣播接收器沒有收到意向
- 13. 活動不從廣播接收廣播定製意向接收器
- 14. IntentService中的廣播接收器(服務已泄漏意向接收器)
- 15. 多意圖接收器?
- 16. 如何接收TIME_TICK意圖
- 17. BroadcastReceiver無法接收意圖
- 18. 無法接收ACTION_TIME_CHANGED意圖
- 19. 無法啓動服務意向廣播接收器的Android
- 20. 應用BROWSABLE意向類別的廣播接收機
- 21. 如何在意向登記服務廣播接收器
- 22. Android應用程序不應該在接收時啓動意向
- 23. 關於接收意向的篩選器操作
- 24. 如何從發送意向接收數據?
- 25. 使用與廣播接收意向fileters的
- 26. 如何調試接收RECEIVE_BOOT_COMPLETED意向過濾器的broadcastreceiver?
- 27. 接收意向動作MAIN而不是NDEF消息
- 28. Android的 - 網絡國家廣播接收器沒有收到意向
- 29. 從廣播接收器收到意向時缺少附加功能
- 30. 在廣播接收器中接收呼叫意圖
你的問題的答案取決於你的意思是「點擊一個txt文件」。你用什麼界面來顯示文件?你如何確定哪個文件被點擊? – matt5784
我將在滾動視圖中顯示包含文本視圖的文件,我將通過文件管理器單擊該文件。 –