亦余心之所善兮,虽九死其犹未悔。这篇文章主要讲述如何在watch app上访问PFUser.Current()相关的知识,希望能为你提供帮助。
我正在使用Parse,我希望能够访问我手表上的当前用户。有一个关于在主机应用程序和扩展程序之间共享数据的指南,但功能enableDataSharing(withApplicationGroupIdentifier:, containingApplication:)
被标记为可用。我想我误解了并且Watch Extensions不被视为App Extensions。还有另一种方法可以访问Watch上的当前用户吗?
答案【如何在watch app上访问PFUser.Current()】因此,经过大量挖掘和追求多种选择后,我发现Watch Apps与ios Apps完全分开,无法再共享KeyChain Access。这可能就是内置Parse解决方案不再有效的原因。幸运的是,Watch Connectivity非常安全,因此我认为从iOS发送会话令牌并使用PFUser.become登录是安全的。
在手表应用程序中:
guard WCSession.default.isReachable else {
print("Phone is not reachable")
return
}WCSession.default.sendMessage(["Request": "SessionToken"],
replyHandler: (user, error) in {
guard let token = response["Response"] as? String else { return }// there is a version of PFUser.become() with a success callback as well
PFUser.become(inBackground: token)
}
在iOS中(符合WCSessionDelegate协议的类):
public func session(_ session: WCSession,
didReceiveMessage message: [String: Any],
replyHandler: @escaping ([String: Any]) ->
Void) {
// Respond to 'Request' message with sessionToken
if let _ = message["Request"], let sessionToken = PFUser.current()?.sessionToken {
replyHandler(["Response":sessionToken])
} else {
// Either user is not logged in, or this was not a 'Request' message
}
}
推荐阅读
- 如何在Appsource.Microsoft.com上发布“Web App”()
- Android - 解析查询.include(“key”)不返回完整的ParseObject详细信息
- android,在离线模式下保存文件(parse.com)
- 图像捕获,保存文件... Android / Parse
- Android推送通知 - Parse.com API - 不工作()
- 在App扩展中集成Parse
- u盘制作Ghost win7系统64位打开盘图文详细说明
- 本文教你如何用u盘安装Ghost xp系统纯净版
- 用u盘安装win7系统图文详细说明