基本上,我想從用戶提供我的應用程序的某些數據生成報告。我的第一個想法是生成一個PDF文件。結果是不可行的,因爲唯一的免費庫不支持文本包裝等功能,而付費庫的許可費用約爲1000美元。找不到處理數據的活動Uri
所以我已經生成了所有內容的HTML文件,如果我在桌面版Chrome打開此文件時,它呈現的罰款。當用戶點擊分享按鈕時,應用程序應該啓動一個意圖,讓默認瀏覽器或移動Chrome瀏覽器打開該HTML文件。
我知道如何通過意圖打開瀏覽器的URL,問題是打開一個文件。 HTML文件正在通過FileProvider訪問(所以例如:「content:// [package] .fileprovider/[filename] .html」)。如果我運行myIntent.setData(htmlFileUri);
並啓動意圖,則對話框中不顯示瀏覽器,只顯示文本編輯器。同樣的事情,如果我使用setDataAndType
。
接下來我試了Data Uri:data:text/html;base64,[html as base64]
。再次,如果我將這個字符串複製到桌面Chrome中,它可以正常工作。但是,如果我開始用這個uri的意圖,我得到
android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=data:text/html;base64,[base64]== typ=text/html }
。
最後,如果我追加http://
的數據URI的開始,我可以打開Chrome或默認瀏覽器的選項。如果我這樣做,什麼都不會呈現,甚至沒有網頁的網址。
還有什麼我可以試試,或者一般有什麼建議? 在此先感謝
將您的html文件保存在資產中,並從那裏或用戶webview中啓動它以在您自己的項目中顯示html – Meenal