[PFUser currentUser]的状态未在主应用程序和iOS Today扩展

时间:2015-06-27 09:44:58

标签: ios objective-c parse-platform ios8-today-widget ios-extensions

我在官方文档here之后启用了Parse应用程序和iOS Today Extension之间的本地数据共享,在我的应用程序AppDelegateviewDidLoad中进行了必要的初始化调用我的扩展方法,使用正确的密钥链和应用程序组。

didFinishLaunchingWithOptions中的AppDelegate方法:

[Parse enableLocalDatastore];
[Parse enableDataSharingWithApplicationGroupIdentifier:@"group.com.my.app"];
[Parse setApplicationId:@"appId" clientKey:@"clientKey"];

在我的扩展程序的viewDidLoad方法中:

// Ensure Parse is only initialized once, otherwise an exception will be thrown
if(![Parse isLocalDatastoreEnabled]) {
    [Parse enableDataSharingWithApplicationGroupIdentifier:@"group.com.my.app"
                                 containingApplication:@"com.my.app"];
    [Parse enableLocalDatastore];
    // Setup Parse
    [Parse setApplicationId:@"appId"
            clientKey:@"clientKey"];
}

我可以在我的扩展程序中进行查询,但是我注意到如果我以记录状态启动,请转到我的应用程序并发出注销,[PFUser currentUser]在扩展程序中仍然是非零的(我仍然可以访问) currentUser中的信息)。相反,如果我在注销状态下开始,请转到应用程序,登录并切换到我的扩展程序,[PFUser currentUser]仍为零。

有关为什么PFUser的登录状态更改未在应用及其扩展程序中同步的任何想法?

如果我已禁用isLocalDatastoreEnabled检查,则每次后续调用时窗口小部件都会crash,但重新加载时,至少currentUser的状态将同步,所以这一切都非常令人费解。

0 个答案:

没有答案