我正在尝试使用Intent.createChooser显示应用选择器对话框,该对话框将列出用户手机中所有可用的Web浏览器。 我正在使用以下代码:
Intent browserIntent = new Intent(Intent.ACTION_VIEW);
browserIntent.setData(Uri.parse(category));
// Create and start the chooser
Intent chooser = Intent.createChooser(browserIntent, "Open with...");
pIntent = PendingIntent.getActivity(helperMethodContext, 0, chooser, PendingIntent.FLAG_UPDATE_CURRENT);
Log.d("HelperMethods: ", "video chat url: " + category);
我在Android 6上测试这个。我的手机有3个浏览器,默认浏览器,chrome和firefox。当我运行它并单击链接(通知)时,应用程序选择器对话框将打开,但仅显示默认浏览器。它不显示chrome或firefox。
我已经检查了手机中的默认应用设置,并且没有默认浏览器。当我点击默认浏览器时,它会打开一个应用程序选择器对话框,显示我在手机上安装的所有浏览器应用程序。
请有人告诉我哪里出错了。
答案 0 :(得分:0)
你有什么类型的uri是如此重要。是http,https还是其他方案。在你的情况下它是Uri.parse(category)
。例如,firefox可以处理如下方案:http
,https
,file
,about
,javascript
,package
。还有mimeType的数据:text/html
,text/plain
和application/xhtml+xml
。