1

大家好!

我已经尝试了很多东西,但没有任何效果。

情况:我正在下载一个 PDF 文件(位置:/storage/sdcard0/MyFolder)。

onDownloadFinished - 我正在打开 .pdf。

它在 Windows 上运行 - 没有任何问题。

它使用 Adob​​e Reader 在 Android 上运行。

但没有 Adob​​e Reader - 它无法在 Android 上运行。我不知道为什么。

DownloadRequestedFile( requestParam, PersistentData::LOCAL_FILE_PATH, [](){

    QDesktopServices::openUrl( QUrl::fromLocalFile( PersistentData::LOCAL_FILE_PATH ) );
});

这是应该打开文件的命令行

这是错误日志

E/AndroidRuntime(24835): FATAL EXCEPTION: Thread-1269
E/AndroidRuntime(24835): android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=file:///storage/sdcard0/MyFolder/MyPDF.pdf }
E/AndroidRuntime(24835):    at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1545)
E/AndroidRuntime(24835):    at android.app.Instrumentation.execStartActivity(Instrumentation.java:1416)
E/AndroidRuntime(24835):    at android.app.Activity.startActivityForResult(Activity.java:3351)
E/AndroidRuntime(24835):    at android.app.Activity.startActivityForResult(Activity.java:3312)
E/AndroidRuntime(24835):    at android.app.Activity.startActivity(Activity.java:3522)
E/AndroidRuntime(24835):    at android.app.Activity.startActivity(Activity.java:3490)
E/AndroidRuntime(24835):    at org.qtproject.qt5.android.QtNative.openURL(QtNative.java:115)
E/AndroidRuntime(24835):    at dalvik.system.NativeStart.run(Native Method)

也许有人能够帮助我或给我一个提示?:)

4

1 回答 1

0

也许它就像错误消息中描述的那样简单:

未找到处理 Intent 的 Activity

因此,如果没有安装 Adob​​e Reader,就没有其他可以显示 pdf 文件的应用程序。Thare在这里也有相关的讨论:

Android:尝试在浏览器中打开本地 HTML 文件时,在某些设备上未发现活动异常

在这种情况下,您必须使用 QAndroidJniObject:: 方法。

另一种解决方案 - 检测到权限问题:

https://forum.qt.io/topic/44859/solved-qt-on-android-open-an-external-file

于 2015-10-21T15:23:57.733 回答