好打開瀏覽器,我打破我的腦細胞與本和無解的地獄來到了...使用數據URI方案,而不是一個URL
通常情況下,在Android中,打開一個Web瀏覽器指定的網站,我們這樣做:
Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.google.com"));
startActivity(browserIntent);
所以,我得到了一個數據URI方案(說不上來,如果它是這樣寫的,我不是這種東西的專家)是這樣的:
data:text/html;charset=utf8;base64,<base64 html code>
如果我將其複製並粘貼到網頁瀏覽器,它會以我想要的方式處理它。
但是,我怎樣才能以編程方式在Android上執行?
Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(dataHTMLBase64));
startActivity(browserIntent);
dataHTMLBase64存儲我前面提到的數據URI方案。
上面的代碼不起作用。它甚至不會啓動Chrome。
我該怎麼辦? PS:我對英文不太好。請提醒我,如果我沒有表達自己的正確方法...
無論如何,如果瀏覽器通常支持'Uri'方案,對於傳入的'intents',我會感到驚訝。當他們遇到來自他們加載的網頁的URL時,他們會在內部處理它。 – CommonsWare