需要有关LSApplicationWorkspace.h头文件

时间:2016-02-01 11:12:00

标签: ios objective-c iphone-privateapi

我想知道,如果我可以使用LSApplicationWorkspace类,基于应用程序商店的应用程序。

LSApplicationWorkspace.h已在" MobileCoreServices.framework"下命名。这是一个公共框架。下面的链接提供了有关私人和公共框架列表的信息。

https://github.com/nst/iOS-Runtime-Headers

以下链接提供" MobileCoreServices.framework"下的头文件列表。来自github

https://github.com/nst/iOS-Runtime-Headers/tree/master/Frameworks/MobileCoreServices.framework

在Xcode 7 beta iOS 9 sdk的MobileCoreServices.framework中 我们有MobileCoreServices.h,UTCoreTypes.h和UTType.h头文件。

他们彼此不同。在github上没有MobileCoreServices.h,UTCoreTypes.h,UTType.h,Xcode框架中也没有LSXXX.h。为什么他们不同,我对此感到困惑。你想给我一些细节吗?

由于

1 个答案:

答案 0 :(得分:0)

LSApplicationWorkspace是私有API,Apple不允许您使用私有框架,也不提供任何文档。

私有API /运行时标头:这些是Apple自身用于执行某些后台任务的API,这些API不允许公开使用。如果你将它们包含在你的代码中,那么你的应用程序有99%的可能被拒绝,剩下的1%是你的运气。

如果您仍想在应用中使用任何私有API,则需要执行此步骤。

  1. 将指定框架添加到您的应用中。
  2. 添加您要使用的私有API的相应.h文件。 (你没有.m文件,只需包含.h文件,这样Xcode就不会抛出错误了。)
  3. 在代码中导入给定的.h文件 4.现在使用你想要的给定私人api的任何方法。
  4. 获取给定框架的所有私有API +公共API的步骤:

    例如,如果您想获得UIKit Framework的所有api,请在终端中运行以下命令:

    $ cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator8.3.sdk/System/Library/Frameworks/UIKit.framework/
    $ mkdir ~/Desktop/headers
    $ class-dump ./UIKit -H -o ~/Desktop/headers