我们很高兴地宣布,我们刚刚发布了以下插件的更新!
升级方法
cordova plugin remove cordova-plugin-camera
cordova plugin add [email protected]
cordova plugin remove cordova-plugin-media
cordova plugin add [email protected]
cordova plugin remove cordova-plugin-file-transfer
cordova plugin add [email protected]
发布亮点
cordova-plugin-camera
-
Android 13 支持
在此版本的
camera
插件中,WRITE_EXTERNAL_STORAGE
权限的maxSdkTarget
已设置为32
。做出此更改的原因是该权限已被弃用,并被 Android 13 更精细的权限READ_MEDIA_IMAGES
和READ_MEDIA_VIDEO
取代。此外,getPermissions
方法已得到改进,可以根据 Android 版本准确获取所需的权限。如果 Android 版本为 13 及以上,它还将根据媒体类型进行获取。此外,为了支持 Android 13 (SDK 33) 上新的精细权限,我们已将
cordova-android
的最低要求提高到12.0.0
版本。此版本的 Cordova-Android 专门包含了处理 Android 13 并使用新权限成功编译项目所需的更新。 -
已删除已弃用的平台
由于 Cordova-Windows 和 Cordova-OSX 平台已弃用,因此已从该插件中删除对这些平台的支持逻辑。
-
保留来自照片图库的图像 Exif 数据 (iOS)
此版本包含一个修复程序,可保留 iOS 图像的 EXIF 数据。
cordova-plugin-media
-
Android 13 支持
在此版本的
media
插件中,文件插件的依赖项已提升到8.0.0
版本,该版本引入了 Android 13 支持。此支持包括 Android 13 更精细的权限READ_MEDIA_IMAGES
、READ_MEDIA_VIDEO
和READ_MEDIA_AUDIO
。此外,我们已将
cordova-android
的最低要求提高到12.0.0
版本。有关详细信息,请查看 Cordova 的文件插件 8.0.0 发布博客文章。
-
已删除已弃用的 Windows 平台
由于 Cordova-Windows 平台已弃用,因此已从该插件中删除对该平台的支持逻辑。
-
能够从自定义方案和前导斜杠目录路径加载文件
文件插件现在可以接受使用自定义方案或前导斜杠构造的 URL。
自定义方案示例
默认情况下,iOS 使用以下自定义方案
app://127.0.0.1/
。现在,您可以传入app://127.0.0.1/file.mp4
来表示位于应用程序内容加载的根目录www
中的媒体文件。前导斜杠示例
如果提供的 URL 为
/file.mp4
,它也可以从以上示例中加载相同的文件file.mp4
。它将从应用程序内容加载的根目录www
开始导航。 -
提高了 Android 的音频质量
从该插件的此版本开始,Android 捕获的音频质量已显著提高。这是通过将比特率提高到 96 Kbps,并将采样率提高到 44.1 kHz 来实现的。
公关说明: 此插件使用 AAC 编码器,与 MP3 编码器相比,该编码器通常以较低的比特率提供更好的音频质量。在研究 AAC 与 MP3 的可接受比特率时,一些人建议 AAC 使用 96 Kbps,而 MP3 使用 128 Kbps。但这并不意味着它们是相同的。就质量而言,它始终取决于源和底层设备。
cordova-plugin-file-transfer
-
针对 Android 13 支持提升了文件依赖项
在此版本的
file-transfer
插件中,文件插件的依赖项已更新到8.0.0
版本,从而启用了 Android 13 支持。因此,为了与更新后的文件插件保持一致,cordova-android
的最低要求已提高到12.0.0
版本。有关详细信息,请查看 Cordova 的文件插件 8.0.0 发布博客文章。
-
已删除已弃用的平台
由于 Cordova Windows/WP8、OSX、Amazon Fire OS、Blackberry 10、Windows Phone 和 Firefox OS 平台已弃用,因此已从该插件中删除对这些平台的支持逻辑。
-
已删除已弃用的
whitelist
插件旧的
whitelist
插件已弃用很长时间,并且在file-transfer
插件中不再需要。此插件将继续调用并检查平台核心代码的一部分shouldAllowRequest
方法。有关如何配置列表的更多信息,请参阅 Cordova 文档的 允许列表页面。
-
修复了 Android Q+ 的下载功能
-
删除了硬编码的
X-Requested-With
标头此硬编码的标头已从 Android 平台中删除。此标头也没有在任何其他平台中设置。如果希望将 HTTP 调用伪装为 XMLHttpRequest,则由应用程序开发人员设置标头。
-
修复了文件上传时缺少标头的问题
在 iOS 中,标头数据在文件上传期间未正确设置。在此版本中,更新了
applyRequestHeaders
方法,以确保应用了标头。 -
重新实现了 UserAgent 覆盖
在 iOS 中,重新实现了使用 WebView 中的
navigator.userAgent
值覆盖 UserAgent 的功能。
请在 issues.cordova.io 上报告您发现的任何问题!
更改包括
cordova-plugin-camera
重大更改
修复
- GH-827 修复(android):设置
applicationId
- GH-810 修复(browser):使用
navigator.mediaDevices.getUserMedia
- GH-712 修复(ios):保留
EXIF
数据 - GH-780 修复(android):更新
plugin.xml
中的查询
杂务、依赖项、文档
- GH-850 杂务:从
plugin.xml
中删除 windows/osx - GH-849 杂务:更新
SUPPORT_QUESTION.md
模板 - GH-831 杂务(android):清理过时的
BuildConfig
注释 - GH-846 dep(dev)!:提升
@cordova/[email protected]
- GH-800 dep(npm):使用重建提升 package-lock v2
- GH-808 docs(README):记录
ANDROIDX_CORE_VERSION
变量
CI
- GH-851 ci(gh-action):与
paramedic
配置同步 - GH-835 ci(android):删除 API 22 和 31。添加了 API 24 和 33
- GH-804 ci:使用
paramedic
同步工作流 - GH-798 ci(android):更新
cordova-android@11
的 Java 要求 - GH-770 ci(ios):使用 iOS 15 更新工作流
- GH-766 ci:删除旧的 CI 工作流
- GH-765 ci:添加 action-badge
- GH-764 ci:删除
travis
和appveyor
- GH-762 ci:添加
gh-actions
工作流
cordova-plugin-media
重大更改
功能
- GH-362 feat(ios):使用自定义方案 + 主机名和前导目录路径加载媒体文件
- GH-383 feat(android):提高音频编码比特率和采样率
- GH-382 feat(android):支持 Android 13 权限检查和请求
其他
- GH-381 dep(dev)!:提升
@cordova/[email protected]
- GH-377 ci:使用 paramedic 基本配置同步 github 操作工作流
cordova-plugin-file-transfer
重大更改
- GH-360 feat(android)!:提升
[email protected]
和cordova-android >= 12.0.0
- GH-346 feat(windows)!:删除已弃用的平台 Windows
- GH-307 feat!:删除已弃用的
whitelist
用法 - GH-270 feat!:删除已弃用的平台(Amazon Fire OS、BlackBerry、Windows Phone、Firefox OS、Windows 8)
- GH-370 dep(server)!:提升
[email protected]
、[email protected]
、[email protected]
并重建package-lock
修复
- GH-372 修复(tests):在文件 URL 上使用
https
- GH-371 修复(tests):更改默认服务器端口
- GH-361 修复:测试版本
- GH-310 修复(android):使用 Android Q 启用下载功能
- GH-313 修复:测试中不正确的资源文件路径
- GH-287 修复(ios):删除硬编码的
X-Requested-With
标头 - GH-284 修复(ios):标头未发送
- GH-268 修复(ios):重新实现用户代理覆盖
- GH-199 修复(windows):js 错误“参数不正确”
杂务
- GH-373 杂务:添加缺少的许可证标头
- GH-368 杂务:删除 windows 残留
- GH-335 杂务:删除 use-permission
WRITE_EXTERNAL_STORAGE
- GH-324 杂务:
package-lock
升级 - GH-323 杂务:.npmrc
- GH-299 杂务:提升即将到来的主要版本 2.0 的“保护性”条目
- GH-274 杂务:添加
package-lock
文件 - GH-272 杂务:软件包清理
- GH-269 杂务(npm):添加忽略列表
依赖项、CI 和文档
- GH-369 dep:提升
@cordova/[email protected]
并重建package-lock
- GH-344 dep(npm):提升
package-lock
v2 并重建 - GH-341 dep(server):将
i
从0.3.6
提升到0.3.7
- GH-329 dep:将
minimist
从1.2.5
提升到1.2.6
- GH-362 ci:使用 paramedic 基本配置同步 github 操作工作流
- GH-348 ci:使用 paramedic 同步工作流
- GH-343 ci(android): 为
cordova-android@11
更新 Java 要求 - GH-318 ci(ios): 使用 iOS 15 更新工作流程
- GH-315 ci: 添加 action-badge
- GH-314 ci: 移除
travis
&appveyor
- GH-311 ci: 添加
gh-actions
工作流程 - GH-280 doc: 改进
progressEvent
文档 - GH-267 doc: 取消插件的弃用状态
- GH-211 doc: 移除过时的翻译