【发布时间】:2014-01-23 20:14:26
【问题描述】:
我们在 iTunes 上有一个应用程序,它在 iTunes 中收到一条警告,指出它使用了未记录的 api 调用:
reateScreenIOSurface
IOSurfaceAcceleratorCreate
IOSurfaceAcceleratorTransferSurface
IOServiceGetMatchingService
IOMobileFramebufferOpen
IOMobileFramebufferGetLayerDefaultSurface
kIOMasterPortDefault
IOServiceMatching
IOObjectRelease
IOServiceClose
这些都来自IOSurface api,它适用于 Mac OSX,但是,我在我们的应用程序中找不到任何这些 cal。我的猜测是我们正在使用的第三方框架之一就是问题所在。 该应用有 3 个框架可以使用这些 API:Aviary、Sincerely 和 Pritnzel。
无论如何,我的问题是,我怎样才能找到这些 api 的真正使用位置(以及是否)?
我在应用程序二进制文件以及 3 个框架(以及应用程序使用的任何其他第三方框架)上使用了 nm -u 和 otool -L,但没有任何运气。
非常感谢
【问题讨论】:
-
最简单的方法是使用文本编辑器打开二进制文件并搜索
IOSurface.framework。
标签: ios iphone app-store-connect iphone-privateapi