2018-05-29 cordova-bug-fix

目前公司APP,android 7+ 打开pdf文件时会出现闪退,模拟器跑报错:详细错误内容是因为https://developer.android.com/about/versions/nougat/android-7.0-changes?hl=zh-cn
android 7+文件目录打开方式变更:

对于面向 Android 7.0 的应用,Android 框架执行的 StrictMode API 政策禁止在您的应用外部公开 file:// URI。如果一项包含文件 URI 的 intent 离开您的应用,则应用出现故障,并出现 FileUriExposedException 异常。

要在应用间共享文件,您应发送一项 content:// URI,并授予 URI 临时访问权限。进行此授权的最简单方式是使用 FileProvider 类。如需了解有关权限和共享文件的详细信息,请参阅共享文件


所以升级文件相关插件 cordova-plugin-file-transfer 、cordova-plugin-file,inappbrowser ,原来pdf打开方式是使用inappbrowser  :window.open(path, "_system");但是没发现inappbrowser 对android7有支持,更新inappbrowser 后,只是打开pdf不再闪退,但是文件始终打开不成功。

所以我增加插件cordova-plugin-file-opener2,使用它打开PDF。

同时文件目录修改为cdvfile://方式。有cdvfile协议去处理android 7+ file://的问题,以下为目前插件版本:

<plugin name="cordova-plugin-whitelist" spec="1"/>

<plugin name="cordova-plugin-splashscreen" spec="~5.0.1"/>

<plugin name="cordova-plugin-camera" spec="~2.2.0"/>

<plugin name="com.distinctclinic.weixin" spec="file:com.distinctclinic.weixin"/>

<plugin name="cordova-plugin-inappbrowser" spec="^3.0.0"/>

<plugin name="cordova-plugin-http" spec="^1.2.0"/>

<plugin name="cordova-plugin-compat" spec="^1.2.0"/>

<plugin name="cordova-plugin-file-transfer" spec="^1.7.1"/>

<plugin name="cordova-plugin-media" spec="git+https://github.com/apache/cordova-plugin-media.git"/>

<plugin name="cordova-plugin-file" spec="^6.0.1"/>

<plugin name="cordova-plugin-file-opener2" spec="^2.0.19"/>

<engine name="ios" spec="^4.5.4"/>

<engine name="android" spec="^6.4.0"/>

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,463评论 19 139
  • 1、获取当前应用的版本号 cordova plugin add cordova-plugin-app-versio...
    XuTong阅读 7,009评论 2 11
  • 吃过饭的萧玉墨,果真带着叶若昀她们一起逛街玩乐。好久没这么轻松状态的叶若昀,跟着叶喜儿一起到处看看,玩玩,摸摸……...
    清薇忆阅读 3,188评论 0 1
  • 本文参加#致我们单纯的小美好#活动,本人承诺,文章内容为原创,且未在其他平台发表过。 QQ里面有一个功能叫做好友互...
    也许时光缺了你阅读 2,515评论 0 0
  • 在学校学到的专业知识,不夸张地说,通常只够在职业生涯的前五年,最多也就十来年之内使用。 社会需求变化如此之快,学校...
    温血马阅读 3,365评论 0 2