FaceBook SDK登录功能实现(Eclipse)
由于公司游戏要进行海外推广,所以要我们接入FBSDK 实现登录,分享,投放,所以写这篇文章,也算是个工作总结。
1、资料
(1).FB SDK github源码地址为
(2): [FB SDK中文接入文档]
2.创建应用,获取应用编号和密钥
这些事情,文档中都有详细描述,我就不进行赘述了
3.下载FB SDK,并配置参数
(1).解压facebook-android-sdk-4.25.0.aar文件,并将其中的assets,res,AndroidManifest.xml,classes.jar等复制的eclipse 新建工程下,并配置项目为library


(2).由于FB SDK引用了v7包和资源,所以要把v7项目引入到FB SDk中来(注:不只是v7包,项目一般在你的sdk目录下的\extras\android\support\v7)

(3) 配置参数,在eclipse res/values/strings.xml中加入
<string name="facebook_app_id">133094273807591</string>
(4),在AndroidManifest中,添加权限,配置参数
<uses-permission android:name="android.permission.INTERNET"/>
application下配置参数
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id"/>
将FB SDK自定义Activity加到application中
<activity
android:name="com.facebook.FacebookActivity"
android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation"
android:label="@string/app_name"
android:theme="@android:style/Theme.Translucent.NoTitleBar" />
(5).引入新建的FB sdk工程

4.接入 FB SDK
(1).在自定义application 中初始化SDK参数
public class MyApplication extends Application{
public void onCreate() {
super.onCreate();
FacebookSdk.sdkInitialize(getApplicationContext());
AppEventsLogger.activateApp(this);
}
}
(2),新建LoginActivity接入FB SDK代码
public class LoginActivity extends Activity {
private static final String PERMISSION = "public_profile";
private static final int PICK_PERMS_REQUEST = 0;
private CallbackManager callbackManager;
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 注册登录回调
callbackManager = CallbackManager.Factory.create();
LoginManager loginManager = LoginManager.getInstance();
loginManager.setDefaultAudience(loginManager.getDefaultAudience());
loginManager.setLoginBehavior(loginManager.getLoginBehavior());
loginManager.logInWithReadPermissions(LoginActivity.this,
Arrays.asList(PERMISSION));
LoginManager.getInstance().registerCallback(callbackManager,
new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(final LoginResult loginResult) {
// App code
Toast.makeText(LoginActivity.this, "登录成功",
Toast.LENGTH_LONG).show();
Intent intent = new Intent(LoginActivity.this,
AppActivity.class);
startActivity(intent);
}
@Override
public void onCancel() {
// App code
Toast.makeText(LoginActivity.this, "登录失败,请稍后重试",
Toast.LENGTH_LONG).show();
}
@Override
public void onError(final FacebookException exception) {
// App code
Toast.makeText(LoginActivity.this, "登录失败,请稍后重试",
Toast.LENGTH_LONG).show();
}
});
}
/**
* 处理登录结果
*/
@Override
protected void onActivityResult(final int requestCode,
final int resultCode, final Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == PICK_PERMS_REQUEST) {
if (resultCode == RESULT_OK) {
LoginManager loginManager = LoginManager.getInstance();
loginManager.setDefaultAudience(loginManager
.getDefaultAudience());
loginManager.setLoginBehavior(loginManager.getLoginBehavior());
loginManager.logInWithReadPermissions(LoginActivity.this,
Arrays.asList(PERMISSION));
}
} else {
callbackManager.onActivityResult(requestCode, resultCode, data);
}
}
}
FaceBook SDK登录功能实现(Eclipse)的更多相关文章
- 在Android上实现使用Facebook登录(基于Facebook SDK 3.5)
准备工作: 1. Facebook帐号,国内开发者需要一个vpn帐号(网页可以浏览,手机可以访问) 2. 使用Facebook的SDK做应用需要一个Key Hashes值. 2 ...
- 集成Facebook SDK之Facebook登录
前言 这几天应公司需求,需要在项目中接入facebook的登录,现在闲下来后再次巩固一下! 准备工作 保证自己的网络已经翻墙,能够进入Facebook网页 准备一个FB的开发者账号,如果没有可以免费申 ...
- SDK接入(1)之Android Facebook SDK接入
SDK接入(1)之Android Facebook SDK接入 由于游戏已上线,且处于维护阶段,所以有空写写各种SDK接入过程和遇到的问题,也当作一种工作总结.SDK接入主流分为这么几类,登录.支付. ...
- iOS Facebook SDK
iOS 使用 Facebook SDK 可以登录,分享,发布通知(Notifications)等. 首先下载 Facebook SDK.然后在 Facebook Developer 上注册自己的 ap ...
- java网站如何集成facebook第三方登录
第一次接触Facebook第三方登录,可能有些地方做的并不全面,只是尝试着做了一个小demo,因为国内接入Facebook的项目并不多,并且多数都是Android或iOS的实现,所以资料也特别少,在此 ...
- android开发学习——facebook第三方登录,看了你不会后悔
给APP用原生android进行facebook第三方登录. 我们做一件事情,首先得了解其原理,这样才不会迷茫,才知道自己做到什么程度了,心里才会有底. 所以,第一步,了解第三方登录的原理:下面贴一些 ...
- DWR实现扫一扫登录功能
前言 <DWR实现后台推送消息到Web页面>一文中已对DWR作了简介,并列出了集成步骤.本文中再一次使用到DWR,用以实现扫一扫登录功能. 业务场景 web端首页点击"登陆&qu ...
- 网站集成QQ登录功能
最近在做一个项目时,客户要求网站能够集成QQ登录的功能,以前没做过这方面的开发,于是去QQ的开放平台官网研究了一下相关资料,经过自己的艰苦探索,终于实现了集成QQ登录的功能,现在把相关的开发经验总结一 ...
- 实现Web上的用户登录功能
关于如何实现web上的自动登录功能 文章来源http://coolshell.cn/articles/5353.html Web上的用户登录功能应该是最基本的功能了,可是在我看过一些站点的用户登录功能 ...
随机推荐
- C++继承与组合
转自https://blog.csdn.net/caoyan_12727/article/details/52337297 类的组合和继承一样,是软件重用的重要方式.组合和继承都是有效地利用已有类的资 ...
- node——获取路由中的参数
var express=require('express'); var app=express(); app.get('/',function(req,res){ res.send('Index'); ...
- [tyvj2054] 四叶草魔杖 (最小生成树 状压dp)
传送门 Background 陶醉在彩虹光芒笼罩的美景之中,探险队员们不知不觉已经穿过了七色虹,到达了目的地,面前出现了一座城堡和小溪田园,城堡前的木牌上写着"Poetic Island&q ...
- 2018 MAC下安装Redis和Redis可视化工具RDM并连接Redis
实验环境:一台mac V:10.13.6 一.安装redis brew install redis 二.安装RDM 直接下载安装rdm dmg文件 链接: https://pan.baidu.com/ ...
- 参数化取值策略Unique
Unique:主要是强调取值的唯一性,如果到最后没有该值了,LR提供了其他解决方案,如图所示: 此处的下拉列表中提供了三种方式,具体如下: About Vuser,当取值次数超过参数的行数时,忽略脚本 ...
- BA-防冻开关的安装
防冻开关学名:防冻恒温保护器,在通风空调系统中监测加热盘管空气侧温度来防止盘管冻坏.具有较小的转换差和良好的重复性.可自动复位.当在30cm长的毛细管上温度低于选择的设定值时会产生一个闭合信号给DDC ...
- 产品经理---- idea good idea
想问题有不同的思想. 1.先去娶老婆再生娃. 我有啥,我能用这些做啥? [大概这就是泯然众人的思想吧] 2.先做衣服后长肉 我想要做个啥?然后我需要怎么做?怎么做的什么? 好的产品经理我认为是第二种. ...
- JavaScript的那些坑之变量提升
想总结一下JS的变量提升特性,都是由于一道题.先上题. var name = 'World!'; (function () { if (typeof name === 'undefined') { v ...
- Android应用之——自己定义控件ToggleButton
我们经常会看到非常多优秀的app上面都有一些非常美丽的控件,用户体验非常好.比方togglebutton就是一个非常好的样例,IOS系统以下那个精致的togglebutton现在在android以下也 ...
- 2015.04.27,外语,读书笔记-《Word Power Made Easy》 12 “如何奉承朋友” SESSION 35
1.how to look 拉丁词根specto,to look的意思,是许多常见英文词语的来源,如spectacle(['spektәkl] n. 值得看的东西, 光景, 眼镜).spectator ...