Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.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
Cocoa 为什么Sierra要求联系人(地址簿)许可?_Cocoa_Abaddressbook_Macos Sierra - Fatal编程技术网

Cocoa 为什么Sierra要求联系人(地址簿)许可?

Cocoa 为什么Sierra要求联系人(地址簿)许可?,cocoa,abaddressbook,macos-sierra,Cocoa,Abaddressbook,Macos Sierra,当使用我的应用程序的用户过渡到Sierra(MacOS 10.12)时,操作系统突然要求他们允许访问他们的联系人。我不知道它为什么这样做;它在以前的任何操作系统上都不会这样做 更重要的是,应用程序无法访问联系人;事实上,我根本没有加载ABAddresssBook框架。我已经搜索了地址和联系人的来源,但没有结果。Xcode不显示“功能”。我使用的唯一第三方框架是Sparkle。(我静态链接mp4v2库,它对MacOS一无所知。)仅供参考,此应用程序是作为已签名的第三方分发的,而不是通过应用商店分发

当使用我的应用程序的用户过渡到Sierra(MacOS 10.12)时,操作系统突然要求他们允许访问他们的联系人。我不知道它为什么这样做;它在以前的任何操作系统上都不会这样做

更重要的是,应用程序无法访问联系人;事实上,我根本没有加载ABAddresssBook框架。我已经搜索了地址和联系人的来源,但没有结果。Xcode不显示“功能”。我使用的唯一第三方框架是Sparkle。(我静态链接mp4v2库,它对MacOS一无所知。)仅供参考,此应用程序是作为已签名的第三方分发的,而不是通过应用商店分发的。它确实有一些嵌入的命令行可执行文件(如ffmpeg等),同样不是特定于OSX的

我已尝试使用调试器查看触发通知的内容。它显示了一个后台线程,其中一个块正在执行以获取[ABAddressBook sharedAddressBook],然后启动用户请求,但没有显示是谁启动了该块

还有什么其他的建议吗

下面是应用程序和Sparkle的
otool-L
库列表

<<App>>/Contents/MacOS/app
/usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.8)
/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 307.4.0)
/System/Library/Frameworks/Security.framework/Versions/A/Security (compatibility version 1.0.0, current version 57740.1.18)
/System/Library/Frameworks/QTKit.framework/Versions/A/QTKit (compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/Quartz.framework/Versions/A/Quartz (compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0)
/System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration (compatibility version 1.0.0, current version 888.1.2)
/System/Library/Frameworks/ScriptingBridge.framework/Versions/A/ScriptingBridge (compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 22.0.0)
@rpath/Sparkle.framework/Versions/A/Sparkle (compatibility version 1.6.0, current version 1.11.0)
/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (compatibility version 300.0.0, current version 1349.0.0)
/usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1238.0.0)
/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (compatibility version 45.0.0, current version 1500.0.0)
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 1348.0.0)
/System/Library/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics (compatibility version 64.0.0, current version 1070.0.0)
/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 775.7.0)
/System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore (compatibility version 1.2.0, current version 1.11.0)

<<App>>//Contents/Frameworks/sparkle.framework/Sparkle:
@rpath/Sparkle.framework/Versions/A/Sparkle (compatibility version 1.6.0, current version 1.11.0)
/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (compatibility version 45.0.0, current version 1391.12.0)
/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (compatibility version 300.0.0, current version 1229.0.0)
/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0)
/usr/lib/libbz2.1.0.dylib (compatibility version 1.0.0, current version 1.0.5)
/usr/lib/libxar.1.dylib (compatibility version 1.0.0, current version 1.3.0)
/usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.5)
/System/Library/Frameworks/Security.framework/Versions/A/Security (compatibility version 1.0.0, current version 57324.0.0)
/System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration (compatibility version 1.0.0, current version 800.0.0)
/System/Library/Frameworks/WebKit.framework/Versions/A/WebKit (compatibility version 1.0.0, current version 601.1.43)
/usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1225.0.0)
/System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices (compatibility version 1.0.0, current version 48.0.0)
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 1229.11.0)
/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 726.4.0)
/Contents/MacOS/app
/usr/lib/libz.1.dylib(兼容版本1.0.0,当前版本1.2.8)
/usr/lib/libc++.1.dylib(兼容版本1.0.0,当前版本307.4.0)
/System/Library/Frameworks/Security.framework/Versions/A/Security(兼容性版本1.0.0,当前版本57740.1.18)
/系统/库/框架/QTKit.framework/Versions/A/QTKit(兼容版本1.0.0,当前版本1.0.0)
/系统/库/框架/Quartz.framework/Versions/A/Quartz(兼容版本1.0.0,当前版本1.0.0)
/系统/库/框架/IOKit.framework/Versions/A/IOKit(兼容版本1.0.0,当前版本275.0.0)
/System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration(兼容性版本1.0.0,当前版本888.1.2)
/System/Library/Frameworks/ScriptingBridge.framework/Versions/A/ScriptingBridge(兼容版本1.0.0,当前版本1.0.0)
/System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa(兼容版本1.0.0,当前版本22.0.0)
@rpath/Sparkle.framework/Versions/A/Sparkle(兼容版本1.6.0,当前版本1.11.0)
/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation(兼容版本300.0.0,当前版本1349.0.0)
/usr/lib/libobjc.A.dylib(兼容版本1.0.0,当前版本228.0.0)
/usr/lib/libSystem.B.dylib(兼容版本1.0.0,当前版本1238.0.0)
/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit(兼容版本45.0.0,当前版本1500.0.0)
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation(兼容版本150.0.0,当前版本1348.0.0)
/System/Library/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics(兼容版本64.0.0,当前版本1070.0.0)
/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices(兼容性版本1.0.0,当前版本775.7.0)
/系统/库/框架/QuartzCore.framework/Versions/A/QuartzCore(兼容版本1.2.0,当前版本1.11.0)
//内容/框架/sparkle.framework/sparkle:
@rpath/Sparkle.framework/Versions/A/Sparkle(兼容版本1.6.0,当前版本1.11.0)
/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit(兼容版本45.0.0,当前版本1391.12.0)
/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation(兼容版本300.0.0,当前版本1229.0.0)
/系统/库/框架/IOKit.framework/Versions/A/IOKit(兼容版本1.0.0,当前版本275.0.0)
/usr/lib/libbz2.1.0.dylib(兼容版本1.0.0,当前版本1.0.5)
/usr/lib/libxar.1.dylib(兼容版本1.0.0,当前版本1.3.0)
/usr/lib/libz.1.dylib(兼容版本1.0.0,当前版本1.2.5)
/System/Library/Frameworks/Security.framework/Versions/A/Security(兼容性版本1.0.0,当前版本57324.0.0)
/System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration(兼容性版本1.0.0,当前版本800.0.0)
/系统/库/框架/WebKit.framework/Versions/A/WebKit(兼容版本1.0.0,当前版本601.1.43)
/usr/lib/libobjc.A.dylib(兼容版本1.0.0,当前版本228.0.0)
/usr/lib/libSystem.B.dylib(兼容版本1.0.0,当前版本1225.0.0)
/System/Library/framework/ApplicationServices.framework/Versions/A/ApplicationServices(兼容版本1.0.0,当前版本48.0.0)
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation(兼容版本150.0.0,当前版本1229.11.0)
/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices(兼容版本1.0.0,当前版本726.4.0)

````原来是Cocoa伐木工人伐木框架。其中一个方法要求所有类查看它们是否启用了日志记录,并对日志记录执行“class_getClassMethod”。如果使用ABAddressBook执行此操作,则会触发用户访问请求