近日, Facebook 与 Twitter 发布了 Apple tvOS SDKs,支持登录、用户验证与分析功能。
登录与用户验证
在开发 tvOS 应用时,Apple TV 的登录是我们所面临的最大的挑战之一。Twitter 产品经理 Chris Oryschak 认为在 tvOS 上使用传统的登录与验证的用户体验是非常糟糕的。此外,很多开发者都发现对于最终用户来说,登录 Apple TV 是一件非常困难的事情。这可以归结为两个因素:缺少对支持 oAuth 的登录方法的支援,以及 tvOS 所采用的非标准的输入方式,这使得我们难以使用传统的用户名 / 密码方式。
为了解决这一问题,Twitter 的 Digits SDK 与 Facebook 的 Login 都启用了双因素认证机制:在进行验证时,tvOS 会显示一个简短的字母数字代码,用户需要通过其电脑、平板或是手机在 http://digits.com/appletv 或是 http://facebook.com/devices 上输入这个代码。这会立刻在 Apple TV 上开启一个会话。
为了实现这一目标,这两个 SDKs 都提供了一个视图控制器类来处理整个过程,并且在验证成功时会调用一个委托方法:
// Twitter's Digits: func didTapButton(sender: AnyObject) { let viewController = DGTAssistedAuthViewController(appearance: nil) { session, error in // This is a completion block } presentViewController(viewController, animated: true, completion: nil) } // Facebook's Login: FBSDKDeviceLoginViewController *viewController = [[FBSDKDeviceLoginViewController alloc] init]; viewController.permissions = @[@"publish_actions"]; viewController.delegate = self; [self presentViewController:viewController animated:YES completion:NULL];
分析
Facebook 的 Analytics 提供了一种记录事件日志的方式,类似于 Facebook Events iOS SDK 。你只需调用:
import FBSDKCoreKit FBSDKAppEvents.activateApp()
一旦激活应用,你就可以将任何预定义的事件日志记录下来,比如说应用启动,完成注册,或者是完全自定义的事件。无需登录即可使用该项功能。
Twitter 的 Crashlytics 则采取了不同的方式,它几乎可以立刻记录下应用所发生的任何崩溃情况,同时还会有崩溃日志,以及每次崩溃对应用所造成的影响的摘要视图。
Facebook**** 的 Share
Facebook 的 tvOS SDK 还提供了一个 FBSDKShareAPI 类,它简化了将内容分享到 Facebook 的过程。
Twitter 的 Digits 与 Crashlytics 隶属于 Fabric ,位于 GitHub 上。Facebook 的 Login、Analytics 与 Share 则可以从 Facebook 网站下载。
查看英文原文: Facebook’s and Twitter’s SDKs for Apple tvOS Enable Onboarding and Analytics
感谢张龙对本文的审校。
给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ , @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群(已满),InfoQ 读者交流群(#2))。
评论