Facebook为Android开发者提供了开源的SDK,方便在App中加入Facebook认证登录、访问Facebook API并且使用Facebook定制的选择器和对话框的用户界面控件。以下就来简单地谈以下如何在Android应用中集成Facebook SDK。

更多详情可以参考 -- Facebook的开发者页面: https://developers.facebook.com/docs/android/getting-started

开发者官网上给的是在Eclipse里集成的方式,个人觉得Eclipse在Android开发上已经渐渐让位于Android Studio,故我尝试在Android Studio中集成Facebook SDK for Android。

首先下载Facebook SDK for Android: https://developers.facebook.com/resources/facebook-android-sdk-current.zip

解压后,在Android Studio中import该项目,导入成功后截图如下:

请输入图片描述

该项目的samples目录包含了一些SDK使用示例:

  • FriendPickerSample
  • GraphApiSample
  • HelloFacebookSample
  • PlacePickerSample
  • ProfilePictureSample
  • RPSSample
  • Scrumptious
  • SessionLoginSample
  • SwitchUserSample

可以逐一运行以看个究竟,选择其中的ProfilePictureSample运行如下:

请输入图片描述

这是我在三星的GT-S7572型号手机上看到的效果,由于在三星手机上运行会默认使用三星的样式,所以在别的设备上可能看到的效果有差异。当我们成功运行了示例后,集成的第一步就完成了!

当我们运行一些需要身份验证的示例,会无法显示出正确的场景,这是由于Facebook需要开发者添加额外的配置。简单来说,每个应用都会有签名信息,我们需要在Facebook上注册该应用密钥的Hash,使得Facebook能够验证进行安全检查。

我们可以将调试密钥的Hash值注册到Facebook开发者设置中,这样就能在设备上运行那些需要验证的示例了。

Linux上:

keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64

回显提示输入密码时,输入android

如果一切正确,我们会得到一个30个字符的key hash。登录Facebook,然后进入开发者网站

在Sample App选项Tab下可以输入Android Key Hash

请输入图片描述

将之前获取到的debug.keystore的Hash值填入输入框,就能够开始运行带验证要求的Facebook SDK中的Sample示例了。

运行HelloFacebookSample后点击Facebook登录按钮,效果如下:

请输入图片描述

先介绍到这!


远方的落日
80 声望2 粉丝

Code monkey.


引用和评论

0 条评论