好打开浏览器,我打破我的脑细胞与本和无解的地狱来到了...使用数据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