Facebook 与 Twitter 提供的 Apple tvOS SDKs 支持登录与分析功能

  • Sergio De Simone
  • 刘嘉洋

2015 年 12 月 14 日

话题:移动AppleFacebook语言 & 开发

近日,FacebookTwitter发布了 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))。

移动AppleFacebook语言 & 开发