
我有代码行
let test = LSApplicationWorkspace.defaultWorkSpace()
而xcode表示Unresolved IDentifIEr LSApplicationWorkspace
我试着清理和重建项目.有任何想法吗?
解决方法 Swift编译器告诉你它不知道一个名为LSApplicationWorkspace的类.这是因为它是一个私有类,没有在作为第三方开发人员可用的任何标题中描述.如果您在App Store审核期间使用LSApplicationWorkspace API被捕获,您的提交将被拒绝.鉴于此类包含在OS版本之间更改的API(由于未记录和私有),以及出于良好隐私原因而不能供第三方开发人员使用的API,使用它几乎肯定是一个非常糟糕的主意,即使您在技术上能够使用以下任一方法执行此 *** 作.>创建一个私有模块映射文件where you import a header you somehow acquired for the private framework that contains LSApplicationWorkspace.这种调用LSApplicationWorkspace的方式(或者实际上涉及使用Mobile CoreServices标头的任何方法 – 即除了下面提到的performSelector之外的任何方法)几乎肯定会从App Store审核启动你的应用程序提交,因为这种(最终)Objective-C方法调用的方法对于静态分析方法是可见的,Apple作为App Store审查的一部分运行在您的代码上.
>使用NSClassFromString:
let LSApplicationWorkspace_class:AnyObject = NSClassFromString("LSApplicationWorkspace")! as AnyObjectlet workspace = LSApplicationWorkspace_class.perform(NSSelectorFromString("defaultWorkspace"))! as AnyObject 使用上面的代码,您现在可以获得一个LSApplicationWorkspace实例,您可以使用它来执行performSelector的代码 – 如果您知道它响应的选择器(…在您运行的特定 *** 作系统版本中).尽管如此,使用LSApplicationWorkspace做任何事情都可能是一个坏主意.
总结以上是内存溢出为你收集整理的ios – 在Swift中使用LSApplicationWorkspace全部内容,希望文章能够帮你解决ios – 在Swift中使用LSApplicationWorkspace所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)