Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/108.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iOS架构i386的未定义符号:“iOS”_“kUTTypeImage”;_Ios_Xcode_Uiimagepickercontroller_Linker Errors - Fatal编程技术网

iOS架构i386的未定义符号:“iOS”_“kUTTypeImage”;

iOS架构i386的未定义符号:“iOS”_“kUTTypeImage”;,ios,xcode,uiimagepickercontroller,linker-errors,Ios,Xcode,Uiimagepickercontroller,Linker Errors,我正在将UIImagePickerController添加到我的应用程序中,当我开始编译时,会出现上述错误。我找到了一个解决方案,因此: 查找符号(kUTTypeImage)并找到它应该存在的图像/库(在本例中为MobileCoreServices.framework)。然后将二进制文件链接到该框架 问题是,我不知道如何实现它。如何查找符号,然后将其链接到框架 应该注意的是,我已经导入了MobileCoReserves框架。以下是相关代码: Undefined symbols for arch

我正在将UIImagePickerController添加到我的应用程序中,当我开始编译时,会出现上述错误。我找到了一个解决方案,因此:

查找符号(kUTTypeImage)并找到它应该存在的图像/库(在本例中为MobileCoreServices.framework)。然后将二进制文件链接到该框架

问题是,我不知道如何实现它。如何查找符号,然后将其链接到框架

应该注意的是,我已经导入了MobileCoReserves框架。以下是相关代码:

Undefined symbols for architecture i386:
  "_kUTTypeImage", referenced from:
      -[ViewController receiveNotification:] in ViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)


您只需添加框架,然后将其导入项目(或者更确切地说,导入目标)。在导航器中,单击项目,然后选择一个目标。然后转到buildphases选项卡,如果尚未展开,则展开linkbinary With Libraries。然后添加MobileCoreServices.framework。在要使用kUTTypeImage的文件中,添加此导入:

#导入


请注意,您使用的是尖括号(),而不是通常使用的引号。

如果注意到这一点,我已经在我的viewcontroller上添加并导入了框架。请参阅上面的编辑。您是否遵循了这两个步骤(先添加,然后导入)?那么它应该可以毫无问题地工作。确认MobileCoreServices位于带有库的链接二进制文件列表中。请参阅问题中添加的屏幕截图(而不是错误标记)。你看到这篇文章的链接了吗。显然,这有时会有问题。在另一篇文章中,解决方案正是我所说的。我注意到的是,您已经将库添加到单元测试目标(IntegrationSiteReportT…)中。在左侧的方案选择器中,似乎正在构建常规目标。您是否将框架添加到两个目标中?如果你这样做了,我不知道为什么它不起作用……哦,看在上帝的份上,是的,我就是这么做的。为了一双新鲜的眼睛。谢谢你的帮助。在这里写一个答案,这样我就可以相信你了。
if ([UIImagePickerController isSourceTypeAvailable:
                 UIImagePickerControllerSourceTypeCamera]) {

                UIImagePickerController* myCamera = [[UIImagePickerController alloc] init];
                myCamera.delegate = self;
                myCamera.sourceType = UIImagePickerControllerSourceTypeCamera;
                myCamera.mediaTypes = [NSArray arrayWithObjects:(NSString *) kUTTypeImage, nil];
                myCamera.allowsEditing = NO;
                [self presentModalViewController:myCamera animated:YES];

            }