Facebook SDK集成之纲要篇

来源:互联网 发布:淘宝上购物车图片卡通 编辑:程序博客网 时间:2024/05/16 17:26

概述

之前写过2篇关于Facebook SDK & Sample的文章。

  • Android Studio集成Facebook SDK Sample

  • Android Studio集成Facebook SDK

并给出了github上的Demo, 最近按照所写的步骤 再操作一次集成,还是发现会有问题卡住。一时脑袋冲动,就把SDK集成的过程清楚详细的操作了遍。然后就有了以下的几篇文章。

文章汇总

  1. Facebook SDK集成之纲要篇
  2. Facebook SDK集成之准备篇
  3. Facebook SDK集成之登录篇
  4. Facebook SDK集成之分享篇

官方文档

在讲集成过程前,先介绍下官方的参考。
首先是github官方库: https://github.com/facebook/facebook-android-sdk
里面提供了集成所需要的参考链接,建议是直接查看英文文档,静心去看,一定会掌握。
如果您正好来到这里,那么,就让我带您走一遍流程,然后再有问题去找官网, 也是不错的选择。
他山之石,可以攻玉

计划文章

有关运行sample的说明,之前文章说明清楚,没有必要再重复, 参考 Android Studio集成Facebook SDK Sample

  • Facebook SDK集成之准备篇
  • Facebook SDK集成之登录篇
  • Facebook SDK集成之分享篇

代码实例

这个部分,也许是您最关心的。我的作风是,既讲废话,也给干货,而且还是纯的。
实例在本地编译运行通过,给出本地编译环境,但,不能保证在每个平台都通过。
代码,托管在github上, readme部分详细介绍了该工程的试用情况。

  • 实例代码是 Wosao
  • Sample apk 以及 facebook apk都在 sample apk

代码获取

因为本项目fork自facebook官方库,里面的提交记录非常多,而且我的修改是MyDev分支(添加了N个apk文件),master分支代码没有修改,这样的好处是,方便同步官方代码并merge到MyDev分支。缺点是如果 使用git clone时间会很长。
建议 使用 –depth选项,减少clone等待时间。

–depth

$ git clone --depth=12 https://github.com/tancolo/facebook-android-sdk.gitCloning into 'facebook-android-sdk'...remote: Counting objects: 1060, done.remote: Compressing objects: 100% (686/686), done.remote: Total 1060 (delta 372), reused 797 (delta 268), pack-reused 0Receiving objects: 100% (1060/1060), 52.75 MiB | 2.94 MiB/s, done.Resolving deltas: 100% (372/372), done.Checking connectivity... done.

其中 ` --depth=12 表示,clone下来的 commit 只有最近的12t记录。不建议您使用
--depth=1 因为后续需要使用到tags。

git branch -a

$ git branch -a* MyDev  remotes/origin/HEAD -> origin/MyDev  remotes/origin/MyDev

您可能会发现,git clone直接是MyDev分支的内容,而不是master, 这是因为我在github上默认设置不是master分支。

tag 查看每阶段的提交

将每个大步骤都列为一个tag, 这样方便您按照每个步骤来学习集成facebook。

$ git tagMyDev-06-ShareDefaultImageMyDev-07-ShareSeletedImageMyDev-Add-FacebookMyDev-LoginButtonMyDev-Wosao-initMyDev_CompilingMyddev-05-LoginManager

共有7个tag: 按照先后提交顺序

  1. MyDev-Wosao-init
  2. MyDev_Compiling
  3. MyDev-Add-Facebook
  4. MyDev-LoginButton
  5. Myddev-05-LoginManager
  6. MyDev-06-ShareDefaultImage
  7. MyDev-07-ShareSeletedImage

按照如下方式切换到对应tag中,然后查看代码

git checkout -f tag_name
0 0