gpt4 book ai didi

ios - 适用于 iOS 的 Google+ 登录(Apple mach-o 链接器错误)

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:27:55 25 4
gpt4 key购买 nike

早上好

我正在尝试将 Google Plus 登录集成到我的第一个 iOS 应用程序中,并按照 Google 在 https://developers.google.com/+/mobile/ios/sign-in 中提供的所有步骤进行操作。我在代码中没有任何错误,但是在编译项目时出现了错误:

我收到 18 个错误“Apple mach-o 链接器错误”,我不知道为什么,因为我遵循了每一步,一切似乎都是正确的。

下面是错误代码,我不知道怎么解决,希望有人能帮我解决。

      Undefined symbols for architecture armv7:
"_OBJC_CLASS_$_ALAssetsLibrary", referenced from:
objc-class-ref in GooglePlus(NSData+GPPAdditions.o)
objc-class-ref in GooglePlus(UIDevice+GPPAdditions.o)
"_kABPersonFirstNameProperty", referenced from:
___48+[GPPAddressBook loadDeviceContactsWithHandler:]_block_invoke in GooglePlus(GPPAddressBook.o)
"_ABAddressBookCopyArrayOfAllPeople", referenced from:
___48+[GPPAddressBook loadDeviceContactsWithHandler:]_block_invoke in GooglePlus(GPPAddressBook.o)
"_kABPersonEmailProperty", referenced from:
___48+[GPPAddressBook loadDeviceContactsWithHandler:]_block_invoke in GooglePlus(GPPAddressBook.o)
"_ABAddressBookGetPersonCount", referenced from:
___48+[GPPAddressBook loadDeviceContactsWithHandler:]_block_invoke in GooglePlus(GPPAddressBook.o)
"_ABPersonHasImageData", referenced from:
___48+[GPPAddressBook loadDeviceContactsWithHandler:]_block_invoke in GooglePlus(GPPAddressBook.o)
"_ABPersonCopyImageDataWithFormat", referenced from:
___48+[GPPAddressBook loadDeviceContactsWithHandler:]_block_invoke in GooglePlus(GPPAddressBook.o)
"_ABRecordCopyValue", referenced from:
___48+[GPPAddressBook loadDeviceContactsWithHandler:]_block_invoke in GooglePlus(GPPAddressBook.o)
"_ABMultiValueGetCount", referenced from:
___48+[GPPAddressBook loadDeviceContactsWithHandler:]_block_invoke in GooglePlus(GPPAddressBook.o)
"_ABAddressBookCreateWithOptions", referenced from:
+[GPPAddressBook loadDeviceContactsWithHandler:] in GooglePlus(GPPAddressBook.o)
"_ABMultiValueCopyValueAtIndex", referenced from:
___48+[GPPAddressBook loadDeviceContactsWithHandler:]_block_invoke in GooglePlus(GPPAddressBook.o)
"_MPMoviePlayerThumbnailImageKey", referenced from:
-[GPPMediaPreviewView thumbnailImageRequestDidFinish:] in GooglePlus(GPPMediaPreviewView.o)
"_MPMoviePlayerThumbnailImageRequestDidFinishNotification", referenced from:
-[GPPMediaPreviewView initWithFrame:mediaAttachment:] in GooglePlus(GPPMediaPreviewView.o)
-[GPPMediaPreviewView thumbnailImageRequestDidFinish:] in GooglePlus(GPPMediaPreviewView.o)
"_OBJC_CLASS_$_CMMotionManager", referenced from:
objc-class-ref in GooglePlus(GPPSpamSignal.o)
"_ABAddressBookRequestAccessWithCompletion", referenced from:
+[GPPAddressBook loadDeviceContactsWithHandler:] in GooglePlus(GPPAddressBook.o)
"_kABPersonLastNameProperty", referenced from:
___48+[GPPAddressBook loadDeviceContactsWithHandler:]_block_invoke in GooglePlus(GPPAddressBook.o)
"_OBJC_CLASS_$_MPMoviePlayerController", referenced from:
objc-class-ref in GooglePlus(GPPMediaPreviewView.o)
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

提前致谢。

最佳答案

第 3 步中的这个库 AssetsLibrary.framework 不包含在您的项目中,这就是您收到此错误的原因。

试试这些:

  1. 您需要将 AssetsLibrary 框架添加到目标的“Link Binary With Libraries”构建阶段。

  2. 尝试使用 Command+Shift+K 清理您的项目并再次添加所需的框架。希望它会开始工作

  3. 将文件复制到您的项目中,但忘记检查要将文件添加到的目标。解决:打开正确目标的构建阶段,展开编译源并添加缺少的 .m 文件。

另一个原因,可能是:

  1. 您包含一个静态库,该库是为另一种体系结构构建的,例如 i386,您主机上的模拟器。解决:

如果您有多个来自库供应商的库文件要包含在项目中,您需要包含一个用于模拟器 (i386) 的文件和一个用于设备(​​例如 armv7)的文件。

关于ios - 适用于 iOS 的 Google+ 登录(Apple mach-o 链接器错误),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25154588/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com