在针对 iOS 构建时,我在 Flutter 应用程序中遇到了两个问题:
在范围内找不到类型“PhoneNumberKit”:尝试在 Flutter iOS 项目中使用 PhoneNumberKit 库时遇到此错误。编译器似乎无法找到 PhoneNumberKit 类型。
调用中的额外参数“phoneNumberKit”:当我尝试在函数调用中实例化或传递 PhoneNumberKit 时,会发生此错误。尽管我正在遵循文档,但函数签名似乎不接受此参数。[在此处输入图像描述](https://i.sstatic.net/rEUwY9Bk.png)
我尝试了以下步骤来解决该问题:
更改CocoaPods版本:我将CocoaPods降级到旧版本,但没有解决问题。 手动更改软件包版本:我手动将 PhoneNumberKit 软件包降级到较低版本,令人惊讶的是,该应用程序运行正常。但是,我不认为这是一个合乎逻辑或可持续的解决方案,因为它可能会导致未来的兼容性问题。 我希望使用最新版本的 CocoaPods 和 PhoneNumberKit 成功构建和运行该应用程序,而不会遇到这些错误。
对于您遇到的 PhoneNumberKit 问题,这里有一个简单的修复方法:
在 Podfile 中设置版本: 听起来编译器在查找 PhoneNumberKit 时遇到了问题。尝试更新您的 Podfile 以指定版本。打开 ios 目录中的 Podfile 并在目标 'Runner' 块下添加此行:
pod 'PhoneNumberKit', '~> 3.7.6'
这将确保 CocoaPods 使用版本 3.7.6,这应该可以解决“找不到类型‘PhoneNumberKit’”错误。 更新您的 Pod: 更新 Podfile 后,您需要刷新 pod。就跑吧:
pod install --repo-update
如果 CocoaPods 仍然给您带来麻烦,您可能需要更新它。您可以通过以下方式做到这一点:
sudo gem install cocoapods
清理和重建: 有时,Xcode 的缓存会让事情变得混乱。尝试清理并重建您的项目:
flutter clean
flutter build iOS
检查您的函数调用: 对于“通话中的额外参数‘phoneNumberKit’”错误,请确保将正确的参数传递给函数。听起来可能存在不匹配,因此请根据文档仔细检查。