我们很高兴地宣布,我们刚刚发布了 Cordova iOS 6.0.0!这是 Cordova 用于构建 iOS 移动应用程序的官方平台。
版本亮点
升级方法
cordova platform remove ios
cordova platform add ios@6.0.0
此主要版本中最显著的更改是
-
增加了 Xcode 11 的兼容性,并将最低 iOS 版本提升至 11.0
截至 2020 年 4 月,苹果要求所有应用商店提交的应用都必须使用 Xcode 11 构建,并以 iOS 13 SDK 为目标。
苹果在 iOS 8.0–9.0 中弃用了
mediaPlaybackRequiresUserAction属性,并将其替换为mediaTypesRequiringUserActionForPlayback。苹果还在 iOS 8.0-9.0 中弃用了mediaPlaybackAllowsAirPlay属性,并将其替换为allowsAirPlayForMediaPlayback。如果您在项目的
config.xml文件中配置了这些属性中的任何一个,建议您使用新的首选项选项MediaTypesRequiringUserActionForPlayback或AllowsAirPlayForMediaPlayback进行更新。此外,
MediaTypesRequiringUserActionForPlayback的值也发生了变化。它过去是一个boolean值,但现在是一个string值,可以是all、audio、video或none。 -
将
WKWebView支持移入 Cordova-iOS 并删除了UIWebView代码由于此更改,
cordova-plugin-wkwebview-engine插件已过时,并且将无法在此版本中使用。如果已安装此插件,可以使用cordova plugin remove cordova-plugin-wkwebview-engine安全地删除它。此外,此版本引入了
WKURLSchemeHandler支持。使用自定义方案来提供您的应用内容,可以修复由于WKWebView对file方案应用的严格安全策略而存在的 CORS 问题。您可以通过在config.xml文件中设置首选项选项scheme和hostname来轻松配置您的 Cordova 项目以使用自定义方案。<preference name="scheme" value="app" /> <preference name="hostname" value="localhost" />重要的是要知道,随着
WKURLSchemeHandler的引入,已不再支持 iOS 10。 -
集成
SplashScreen插件代码,并将启动图像替换为启动故事板如果您是从启动图像迁移而来,有关如何为启动故事板设置图像的详细信息,请参阅SplashScreen 文档。
- 修复了存在多个 Xcode 构建目标时覆盖捆绑标识符的问题
-
将最低 CocoaPods 版本要求提升至 1.8.0
自 CocoaPods 1.7.0 起,引入了 CDN 支持。它在 1.7.2 中最终确定,但直到 1.8.0 才配置为默认设置。使用 CDN 从传统的 GitHub 存储库中获取 podspec 可以极大地提高性能。使用 CDN,Cordova 用户不再需要等待 CocoaPod 的 GH 存储库同步。现在使用 pod 和全新的 CocoaPods 安装构建项目只需不到一分钟的时间。
您可以观看他们的演示视频,了解 CocoaPods 使用 CDN 后的速度有多快。
请在 issues.cordova.io 上报告您发现的任何问题!
更改包括
- GH-875 fix: 删除
q的残留 - chore(
audit-license-headers): 添加并更正许可证 - GH-874 chore: 清理并准备 6.0.0 版本
- GH-873 chore: 删除未分配的启动图像
- GH-872 chore: 删除迁移
English.lproj的已弃用警告 - GH-871 chore: 为
CordovaLib启用基本国际化 - GH-866 refactor: 默认使用文件方案
- GH-852 ci: 使用 github actions
- GH-869 refactor: 提升 eslint 版本,修复 lint 并重建 package-lock
- GH-860 breaking: 删除
q依赖项 - GH-859 refactor: 使用
superspawn - GH-851 breaking: 将
shelljs替换为fs-extra - GH-862 revert: 将
ios-sim从^9.0.0恢复到^8.0.2 - GH-863 chore (npm): 添加忽略列表
- GH-861 chore: 添加
package-lock.json - GH-790 breaking feature: 集成启动屏幕并用启动故事板替换 (CB-13143)
- GH-769 breaking: 将 python 3 兼容性添加到
bin/cordova_plist_to_config_xml - GH-847 breaking: 添加并使用带有修复的
fs-extra - GH-853 breaking: 提升带有修复的
xcode版本 - GH-850 breaking: 修复文件
chmod - GH-849 breaking(
pod): 删除未使用的 API 并将最低版本要求提升至1.8.0 - GH-848 breaking: 提升
cordova-common@4.0.1版本 - GH-846 breaking(npm): 提升依赖项版本
- GH-845 breaking(npm): 提升开发依赖项版本
- GH-825 修复类型警告,并通过自动装箱简化代码。
- GH-615 (ios) 不要预先填充
orientation - GH-820 仅将
bundleid设置为主应用目标 - 更新 CONTRIBUTING.md
- GH-822 chore: 删除已弃用的
orientation方法 - GH-810 从
README中删除指向 wiki 的死链接 - GH-543 feat: 为 Cordova 库添加
Podspec - GH-801 breaking (
UserAgent): 删除CDVUserAgentUtil并为WKWebView实现 - GH-803 feature: 添加
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED - GH-802 refactor: 应用各种 xcode 推荐的更新
- GH-800 tests: 更改
MediaTypesRequiringUserActionForPlayback的注释值 - GH-781 breaking: 使用
WKURLSchemeHandler提供应用内容 - GH-797 breaking: 删除 MediaPlaybackRequiresUserAction 并将
MediaTypesRequiringUserActionForPlayback更新为正确的变量类型 - GH-798 refactor (
cordovaBoolSettingForKey): 改进布尔值检查和原生日志记录 - GH-785 refactor: 弃用
mediaPlaybackAllowsAirPlay - GH-794 style: 删除 Objective-C 测试模块中的多余空格
- GH-784 chore: 弃用
mediaPlaybackRequiresUserAction - GH-783 breaking (
CDVURLProtocol): 删除 - GH-789 chore: 修复已弃用的
stringByAddingPercentEscapesUsingEncoding用法 - GH-788 chore: 删除已弃用的方法
viewDidUnload - GH-780 breaking: 将 xcode 兼容性升级到 11.0
- GH-787 fix (
CDVWebViewEngine): JavaScript 到原生调用的工作不正常 - GH-786 test: 仅在 Xcode 11 上运行
- GH-782 fix (
node): 带有shebang解释器的要求失败 - GH-779 breaking: 将
deployment-target提升至11.0 - GH-773 refactor: 删除
uiwebview并添加wkwebview - GH-751 refactor: 使用模板字符串
- GH-749 refactor: 转换拆分出的变量
- GH-750 refactor: 转换对象简写
- GH-748 refactor: 不要将 this 别名为 self
- GH-747 refactor: 使用箭头函数
- GH-754 fix: 替换
Podfile中的变量 - GH-746 refactor: 将
var转换为let/const - GH-744 chore: 更新
eslint并应用修复 - GH-743 chore: 提升
node要求(>=10) - GH-731 CB-14135(ios): 转义
Podfile中名称的所有单引号
