如何在Qt / Android上的默认外部编辑器中打开文件

时间:2014-07-04 14:04:55

标签: android c++ qt

我有一个移植到Android 4.4的Qt应用程序(使用Qt Creator 3.0.1,Qt 5.2.1)。

在QLabel中,我创建了一个指向网页<a href=http://www.google.fr>Test</a>的链接。当用户点击&#34;测试&#34;时,将在用户的默认选定浏览器中打开Goog​​le页面。细

在同一个QLabel中,我创建了一个指向文件/文件夹<a href=file:///sdcard/Documents>Test</a>的链接。当用户点击&#34;测试&#34; ......没有任何反应。

如果我从Android手机中打开Chrome并在网址字段中输入file:/// sdcard / Documents,则该文件夹会正确显示。

请注意,我的清单有android.permission.READ_EXTERNAL_STORAGE(以及android.permission.WRITE_EXTERNAL_STORAGE)。

如何让Android系统在默认查看器中打开文件/文件夹?

1 个答案:

答案 0 :(得分:1)

我终于放弃了....我从我的C ++程序调用Java代码来打开文本编辑器。类似的东西:

Intent intent = new Intent();
intent.setAction(android.content.Intent.ACTION_VIEW);
File file = new File(fileName);
intent.setDataAndType(Uri.fromFile(file), "text/plain");

myActivity.startActivity(intent);

它有效,但仍然不如使用简单的文件超链接.... 好的一点是,它打开默认选择的文本编辑器而不是Web浏览器。