19

所以,我有一个使用 Core Image 的人脸检测功能的应用程序(https://itunes.apple.com/us/app/ace-freakyface-cartoon-mask/id454513332?mt=8),我刚刚得到了新的iPhone 5s 和应用程序不再检测到人脸。调试时我还在控制台中收到错误:

/System/Library/PrivateFrameworks/FaceCore.framework/fcl-fc-3.dat: mach-o, but wrong architecture 2013-09-25 20:17:22.861 faceMaker[474:a16b] 人脸检测发现人脸错误:错误域=FCRFaceDetectorErrorDomain Code=2 "dlopen(/System/Library/PrivateFrameworks/FaceCore.framework/fcl-fc-3.dat, 2): 没有找到合适的图像。确实找到了:

我已经用 iOS 7 更新了我的 iPhone 4s(非 64 位)并且该应用程序可以正常工作。我认为我需要更新有效的架构,但是当我这样做时,我会破坏 AdMob 库。可能有办法解决这个问题,但我不知道。无论如何,我会继续尝试一些东西,但想知道是否有其他人有类似的问题。我还使用人脸检测器 api 下载了应用商店中的其他应用程序,结果相同,即在 64 位上没有乐趣。

谢谢,

缺口

4

4 回答 4

9

我们的面部变形应用程序也有这个问题。我写了一个独立的测试程序,只做人脸识别软件。如果我将它编译为 64 位应用程序并在装有 iOS 7 的 iPhone 5S 上运行它,它就可以工作。如果我将它编译为 32 位应用程序,在装有 iOS 7 的 iPhone 5S 上运行它,它就会失败。我收到了类似的日志。它出现在 32 位模式下,名为 FaceCore 的私有库不可用。该库的 64 位版本可用。我们需要让更多的人向苹果抱怨这件事,因为这听起来像是一个操作系统错误!

于 2013-09-29T01:28:07.167 回答
5

一个解决方案刚刚出现在最新的 xCode 更新中。您现在可以为 arm64 和目标 6.0 及更高版本构建(与以前版本的 7.0 及更高版本相比)。如果你这样做,问题就解决了。

在其他方面,Apple 已经回复了我的错误报告,并表示他们将在下一次 iOS 更新中修复这个问题。手指交叉!

于 2013-11-11T21:10:39.863 回答
1

我希望我能竖起大拇指最后的帖子。我有未针对 64 位更新的库,进入构建设置并显示所有提供了关闭 64 位构建的选项。

于 2013-10-20T21:27:06.660 回答
0

对我来说,我将构建设置中的架构更改为“包括 64 位,arm 64”并且它工作正常。但不知何故,我的 google admob 无法正常工作,因为它不是 64 位计算。

于 2013-10-04T13:10:17.427 回答