本文重点介绍下facebook接入的一些背景知识,本身其实与android是无关的。
Facebook Connect
facebook connect协议是OpenID与OAuth的结合,第三方站点/应用可以通过facebook connect这套协议规范便捷地接入facebook并使用facebook上大量的用户数据。
OpenID简介
OpenID背后的思想很简单,简化用户登录的过程,而不是录入一个个注册表单。详细的知识请点击这里 ,OpenID的优点主要有以下几点:
- 更快、更简单的登录,因为消除或简化了注册过程。
- 更好的登录过程和生命周期,因为用户从此只需使用一个ID和口令。
OAuth简介
在第三方站点/应用提供编程接口的背景下,如何控制接入的安全与数据的可控正是OAuth要解决的问题。详细的知识请点击这里 ,OAuth的优点主要有以下几点:
- 安全、保密的第3方数据访问。
- 对于第3方访问的控制是声明性的。
Facebook Connect简介
Facebook Connect结合了OpenId与OAuth地思想,为用户提供统一登录页面,并对开发者的数据访问进行了声明与控制。Facebook Connect的优点:
- 一键登录(android跨app有待调研)
- 直接访问Facebook提供的API
Access Token
用户数据使用授权的整体的思路就是第三方应用从facebook那里获得未授权的token与密钥,用户由facebook引导对token进行授权,facebook返回授权后的access_token给第三方应用。描述下就是 unAuth token ————request token————access token的过程。
客户端通过webkit浏览器打开https://www.facebook.com/dialog/oauth?client_id=${client}&redirect_uri=http://127.0.0.1/openFire.html&scope=email,offline_access&response_type=token
链接 。
client_id, 在facebook注册的app的id
redirect_url, 回调的URL
scope,访问的数据范围
response_type 请求类型
验证通过后如果是用户第一次使用,则会跳转至授权页面要求用户授权https://www.facebook.com/dialog/permissions.request?_path=permissions.request&app_id=${appid}&redirect_uri=http%3A%2F%2F127.0.0.1%2FopenFire.html&display=page&response_type=token&fbconnect=1&perms=email&from_login=1
返回的数据access_token(有效用户标示)和expires_in(token有效期)
连接facebook的业务大体如下图所示
- 大小: 41.7 KB
分享到:
相关推荐
Android基于Facebook Rebound的动画效果框架是一个基于Facebook Rebound的动效框架Backboard,封装了一些API,便于开发者更方便的把View与Motion结合起来,一些效果很棒
适用于 Android 的 Facebook SDK 的当前版本是 11.2.0,需要 Android API 15。适用于 Android 的 Facebook SDK 的代码和示例可在 GitHub 上找到。一种安全便捷的方式,方便用户使用 Facebook 凭据登录您的应用或网站...
[Deprecated] android-simple-facebook Currently this lib was tested and works with graph api v2.3 and below. For now, I don't have much time to maintain this library anymore. Beside this, Facebook made...
适用于Facebook受众群体网络的Android演示应用程序 新闻订阅源应用程序可演示与原生广告集成。 入门 请按照本为Audience Network注册一个帐户并设置广告展示位置。 从获取News API的API密钥。 替换fb-audience-...
这是一款Android 新浪、腾讯、人人、豆瓣、Facebook、Twitter OAuth认证实例源码,豆瓣使用的是OAuth1.0,新浪、腾讯、人人、QQ则都是使用OAuth2.0,Fackbook和Twitter直接使用官方的sdk和api。 使用方法:导入...
RetroFacebook turns Facebook API into a Java interface using RxJava. Easy to add API and model for facebook. Inspired by retrofit. Live DEMO / DEMO app Usage My posts: Before: GraphRequest request...
1、Android显示GIF动画 GifView GifView 是一个为了解决android中现在...它被设计成通过一个API就能够很方便使用所有版本的Android操作栏的设计模式。 20、JakeWharton-Android-ViewPagerIndicator 界面切换的效果。
Fresco 是一个强大的图片加载组件。 Fresco 中设计有一个叫做 image pipeline 的模块...Fresco 支持 Android2.3(API level 9) 及其以上系统。 配合工具类使用,妥妥的。 详细参考api文档 http://www.fresco-cn.org/
FacebookImagePicker.zip,android facebook图像选择器android facebook图像选择器,使用kotlin、rxjava2和facebook的图形api构建
FacebookMessengerBot.js - a Node ES5/6 API for the new Facebook Messenger Bot Platform Scribe.js - a Node ES5/6 logging system with a web interface Screenshot Demo Recent 01/11/2015 ► Added ...
The Facebook API v2 does NOT return the entire friend list, only the users that also have authorized this app. The API v1 was removed after April 30 2015, practically breaking this app. Copyright (C)...
一个用于从本地SDK安装中连接Facebook的插件$ npm i-保存git + https://github.com/laituanmanh32/capacitor-facebook-plugin.git $ npx cap sync Android配置在文件android / app / src / main /中java / ** / ** ...
android 2.2 Google API 下开发的一个事件管理程序,可以在地图上显示事件,并且进行导航, 可以在日历中查看事件,并且结合事件记录与分享,一键上传照片到picsa 和 facebook
Google,Facebook和Firebase API用于支持该项目。 技术细节: ---- backend ---- Firebase API充当此项目的后端服务器。 ---- UI ----底部导航用于在新闻源,列出好友,地图好友,聊天活动(片段)之间切换。 ...
远足马拉松远足Messenger Messenger马拉松应用我开发此应用程序是为了进一步了解Android硬件API和Facebook API。 该应用程序的作用是让您登录到Facebook帐户,它将从您的Facebook帐户中获取所有信息并显示出来。 这...
社交媒体应用程序克隆(Instagram,Facebook,链接等)+ Node.js套接字聊天+呼叫+直播 使用的技术 Flutter- iOS android app PHP -管理面板和其他API Nodejs for chat(socket.io) Firebase -用于推送通知 AWS -...
索引入门内部体系结构跟踪处理和分析API当前,没有一个API是稳定的,它们在发布之前会发生变化(主要是为了使它们更易于使用)。 用法示例java / main / com / facebook / profilo / sample中的示例应用程序显示了...
Android 的 go-gcm 库的 Google Cloud Message(现为 Firebase Cloud Messaging)支持使用 apns2 库的苹果推送通知服务支持 YAML 配置支持使用命令行发送单个 Android 和 iOS 通知支持使用 Web API 推送通知...
+版本,使用android GPS技术,Google Maps API,Facebook API和SQLite数据库。 #####您必须将以下开发密钥替换为您自己的注册密钥: 在RouteTrackerGui.java中:私有静态最终字符串FACEBOOK_APPID 在strings.xml...
在JAVA中创建一个使用该API的客户端。 各种书架,设计更令人赏心悦目,可在找到 用于与Facebook页面通信的 徽标和其他图标的 ,其中一些来自网站然后进行了编辑。 描述 Life Goals App是一个android应用程序,我们...