1

我想PFObject直接通过推送通知发送。我直接在推送中发送 Parse 对象(例如,使用自定义键“arg”),但我无法弄清楚如何PFObject从接收到的数据中构造一个真实的。接收到的数据(显然)是一个NSDictionary,所有键(对象 ID、创建于、ACL 等)都可用。如何将其转换为PFObject实例?

我需要一种用可用数据构造 a的真正PFObject方法,因此不要提供明显的解决方案,例如“发送对象 ID,然后使用 Parse 的方法在客户端获取该对象”。等等

我正在寻找一种自动方式,如果有的话。我的目标是 iOS 8,所以最大推送有效负载大小也不是问题(2KB 对我来说已经足够了)。

更新:我试过[PFObject objectWithClassName:@"MyClassName" dictionary:receivedDictionaryObject];但没有用。它只是不起作用,nil即使字典具有直接来自 Parse 本身的所有数据,字段也是如此。

4

1 回答 1

0

我认为你可以使用这样的东西

+ (PFObject *)objectFromDictionary:(NSDictionary *)dictionaryFromPush{
    PFObject *theObject = [[PFObject alloc] initWithClassName:@"MyClassName"];
    for( NSString *keys in [dictionaryFromPush allKeys] )
    {
        [theObject setObject:[dictionaryFromPush objectForKey:keys] forKey:keys];
    }
    return theObject;
}

这是一个未经测试的代码,但我很肯定会给你和我的观点的想法,从 Push 中获取 NSDcitionary 并将其发送到此方法以便能够将其转换为 PFObject

希望这有帮助

于 2015-02-01T03:34:27.920 回答