您的位置:首页 > 移动开发 > Android开发

FaceBook 三方分享 之 添加Android平台 的 密钥散列

2017-09-14 09:23 1116 查看
需要添加 FaceBook 分享,于是准备添加平台和添加包应用。1.【先看下FaceBook如何申请和操作】2.【介绍如何生成 密钥散列--重点!!】3.是如何继承到ShareSdk中

1.【先看下FaceBook如何申请和操作】

转自http://bbs.mob.com/forum.php?mod=viewthread&tid=19148

1、点击连接https://developers.facebook.com/进去facebook的后台,注册账户申请应用;
2、新建应用,如下图:


 


 


 

3、添加Android平台,如下界面都是必须要填写的:

 

点击添加平台选择android的话,如下所示填写包名、类名和keyhash、设置完之后保存更改;


 
Contact Email 填写您经常运行的邮箱就好,有什么结果会通知此邮箱的;
Google Play Package Name:项目的包名
Class Name:主入口类
Key Hashes:这个keyHashes是很重要的,这个你可以通过工具来获取。
4、下面在设置里面配置回调地址,回调地址必须要与工程内的ShareSDK.xml配置的保持一致:


 

点击添加产品选择facebook登录,如下图所示


 

如图所以配置的地址必须与项目中配置的回调地址相同


 

5、在点击应用审核选项,如下图开关打开YES:


 
然后再点击提交应用,如下图所示选择publish_actions


 

添加完之后如下图所示,下面开始配置下需要审核的内容


 

6、添加了权限之后,点击全部旁边的填写具体描述的按钮,选择第一个选项,再选择手机,用英语描述下开发者自己项目里做登录或者分享的步骤,让facebook那边的人可以按照您的步骤找到分享或登录的按钮,点击测试登录或者分享,如下图


 

录制的视频的样式可以参考这个链接录制http://www.tudou.com/programs/view/d_etTMG0PUo

fb客户端先退出,然后分享的时候再登录,体现客户端登录,并且有图文编辑界面,分享后可以看到分享的内容;

测试前必须要添加测试者账号进行测试,否则是没有权限添加的,添加位置如下所示


 
7、保存了之后,下面是提交app应用,上传个apk就好的


 

点击后facebook就已经提交审核了,这个就等facebook的邮件即可;
1.在分享的时候不能帮用户填写分享内容text,也就是说text先设置空,分享是在图文编辑界面让用户自己输入内容,可以等审核过后再改成您想分享的内容;
2.在登录的时候默认只有客户端登录,不要网页登录,客户端登录keyhash必须设置正确才可以的,不然也容易被拒绝,我们的sdk默认可以优先客户端登录;
3.在提交审核之前一定要用注册应用的帐号先使用appkey分享成功一次才行,分享测试可以在Roles内添加测试账号,分享成功后在时间线查看审核的时候会有用;

                                                                                                                        2.【是介绍如何生成 密钥散列】
1.先导入一个jar 包,sun.misc.BASE64Decoder.jar ,主要是采用BASE64Encoder编码。

BASE64:http://download.csdn.net/download/qq_31332467/9977998

/**
* <P>密钥散列</P>
*/
private void initKeyhashs() {
try {
PackageInfo info = getPackageManager().getPackageInfo(
"包名", PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures) {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
BASE64Encoder encoder = new BASE64Encoder();
String key = encoder.encode(md.digest());
BBLog.LogE("initKeyhashs", key);
}
} catch (PackageManager.NameNotFoundException e) {

} catch (NoSuchAlgorithmException e) {

}
}


3.【是如何集成到ShareSdk中】

1.Facebook同样也需要先集成sharesdk,集成文档请参考:

eclipse用户可参照:http://wiki.mob.com/sdk-share-android-3-0-0/

android studio用户可参照:http://bbs.mob.com/thread-22130-1-1.html




 1. 首先在官网下载ShareSDK For Android,参照上述链接文档的提示进行集成,已下载的文件需按照文档提示放置在规定的位置,集成后的目录文件如下所示:



3.Facebook开发平台申请的申请的appkey跟apps ecret在sharesdk.xml文件配置好,如下图



需要注意的是标记处的回调地址需要跟Facebook开发平台配置的一致,此地址未作限制,能点击打开即可;此处是代码中的主要配置部分;

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息