为什么我的PFAnalytics没有trackAppOpeneWithLaunchOptions函数?(IOS SWIFT)

don*_*key 24 parse-platform swift

错误信息:

    'PFAnalytics.Type' does not have a member named 'trackAppOpenedWithLaunchOptions'
Run Code Online (Sandbox Code Playgroud)

所有其他类似的功能都有效,例如trackAppOpenedWithLaunchOptionsInBackground.看起来它只是从可用功能列表中消失.

但是在我的PFAnalytics.h头文件中,trackAppOpenedWithLaunchOptions清楚地列出如下所示:

    + (BFTask *)trackAppOpenedWithLaunchOptions:(NSDictionary *)launchOptions;
Run Code Online (Sandbox Code Playgroud)

可能出错了什么?请帮忙!我在用swift

小智 35

声明该方法返回一个BFTask *对象,该对象是Bolts框架的一部分.确保您的项目链接Bolts框架,然后添加

#import <Bolts/Bolts.h>
Run Code Online (Sandbox Code Playgroud)

你的桥头.

这为我解决了Swift中的一些"缺失"API(这个,以及PFObject.saveInBackground这里提到的:PFObject在Xcode 6.0.1中没有名为'saveInBackground'的成员,Yosemite GM3


小智 23

尝试

PFAnalytics.trackAppOpenedWithLaunchOptionsInBackground(launchOptions, block: nil)
Run Code Online (Sandbox Code Playgroud)

代替

PFAnalytics.trackAppOpenedWithLaunchOptions()
Run Code Online (Sandbox Code Playgroud)

  • 如果你想找到像Objective-C这样的代码,那么下面的答案是正确的.在找到找不到的方法后,只需在BridgingHeader.h中#import <Bolts/Bolts.h>. (2认同)

Zor*_*ayr 7

自1.0版以来无需桥接标头.要解决此问题,只需import Bolts在您的顶部添加AppDelegate:

import UIKit

import Parse
import Bolts

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate
{ 
...
}
Run Code Online (Sandbox Code Playgroud)