【问题标题】:Which functions produce the "would like to access your contacts" window in MacOS 10.8?哪些功能会在 MacOS 10.8 中产生“想访问您的联系人”窗口?
【发布时间】:2012-08-02 07:15:51
【问题描述】:

我根本不使用 ABAddressBook 框架。我不知道为什么我的应用程序要访问联系人?没有例外,或者有用的日志数据...

【问题讨论】:

  • 您是否使用任何第三方库(用于广告、使用跟踪等)?
  • 我们使用了很多框架,但没有一个应该使用ABAddressBook...有官方的方法来“捕捉”为什么会显示这个隐私窗口吗?

标签: objective-c macos cocoa osx-mountain-lion


【解决方案1】:

我知道没有任何文档。我会尝试在调试器中在ABAddressBook 类的+addressBook+sharedAddressBook 以及相关的C 函数(例如ABGetMeABGetSharedAddressBook)上设置断点。

此外,一旦出现对话框,请立即在调试器中停止应用,并调查所有线程中是否存在可疑函数调用,因为 OS X 将阻止调用,直到用户单击其中一个选项。

在 Apple 开发者论坛的相关帖子中,我了解到支持 iChat Theater 的 InstantMessage 框架是这种情况的罪魁祸首。

【讨论】:

  • 谢谢! InstantMessage.framework 是罪魁祸首:函数 [IMAVManager sharedAVManager] 将产生“想访问您的联系人”窗口。
  • 根据您第一次调用函数 [IMAVManager sharedAVManager] 的位置,“想访问您的联系人”窗口可能会使您的应用程序崩溃...感谢 Apple 提供的这一新功能!
猜你喜欢
  • 2012-03-09
  • 1970-01-01
  • 1970-01-01
  • 2017-12-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-11
相关资源
最近更新 更多