Ionic - ld:框架未找到UserNotifications

时间:2016-10-14 04:32:56

标签: ios cordova ionic-framework push-notification phonegap-pushplugin

我创建了一个离子项目并尝试使用https://docs.ionic.io/services/push/

实现推送通知

ionic build ios没有任何问题。

但是当我尝试使用ionic emulate iOS在IOS上模拟应用时,它失败并出现以下错误。

ld: framework not found UserNotifications
clang: error: linker command failed with exit code 1 (use -v to see invocation)



** BUILD FAILED **



The following build commands failed:
    Ld build/emulator/JustBook\ Salon.app/JustBook\ Salon normal i386
(1 failure)

我使用管理员权限来运行这些命令。

2 个答案:

答案 0 :(得分:2)

iOS 10引入了新的UserNotifications framework。我认为这个项目中使用的插件已经更新以支持/包含它,这意味着你需要使用XCode 8构建,其中包括包含UserNotifications框架的iOS 10 SDK。使用XCode 7构建将导致观察到的错误。

请注意,此时,基于云的Cordova构建服务(如Phonegap Build,Intel SDK和Ionic Cloud)仍在使用XCode 7.

答案 1 :(得分:2)

我在XCode上也遇到过这个问题。

  

ld:找不到框架UserNotifications

     

clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)

DaveAlden解释了为什么会发生这种情况。

如何使用XCode 7构建

浏览您的项目,找到UserNotifications,然后将其删除。

  1. 命令 + Shift + F
  2. 查找与UserNotifications匹配的文字。 .xcconfig文件应显示在出现次数中。
  3. 在出现该文件的文件中,从每个匹配项的命令行参数中删除-framework "UserNotifications"
  4. 保存.xcconfig文件。
  5. 构建并运行。
  6. 到目前为止,我还没有办法阻止Pod将这些行添加到项目中。