【发布时间】:2017-11-25 19:45:17
【问题描述】:
我的 ionic 应用程序使用 AppBrowser 中的 Cordova 插件。我更新了我的 ionic & cordova 环境;并将 cordova-plugin-inappbrowser 更新到 1.7.2 版
现在这行代码什么都不做(它在 6 个月前有效):
var targetPath = "file:///storage/emulated/0/Android/data/myapp/files/myDir/fds/30510L109.pdf";
$cordovaInAppBrowser.open(targetPath, “_system”, { location: ‘no’, clearcache: ‘yes’, toolbar: ‘yes’, closebuttoncaption: $translate.instant(“SCAN.BACK”), EnableViewPortScale:‘yes’ });
我在控制台中没有收到任何错误(当我使用:ionic cordova run android -lc 运行应用程序时),并且什么也没有发生…… 我怎么知道出了什么问题?
【问题讨论】:
-
您需要使用 chrome inspect devices 来检查设备控制台中的错误
-
经过一番研究和调试,我发现抛出了这个异常:[FileUriExposedException][1]。这似乎是 Android SDK 24 ([link][2]) 中引入的更改我阅读了此解决方案:[link][3],但我已经使用 cordova.file.externalDataDirectory 来保存我的 PDF... [1] :developer.android.com/reference/android/os/… [2]:inthecheesefactory.com/blog/… [3]:github.com/pwlin/cordova-plugin-file-opener2/issues/…
-
file 外部数据目录将返回一个内置的 sdcard 路径。你提到的这条路径——“storage/emulated/0/Android/data/myapp/files/myDir/fds/”我觉得不是来自外部数据目录
-
cordova.file.externalDataDirectory 返回:file:///storage/emulated/0/Android/data/myapp/files/
-
只要检查此链接是否有帮助 - github.com/gandhirajan/Cordova_File_Operations
标签: cordova ionic-framework inappbrowser