Facebook Login 登录 APP开发实现唤起 Facebook应用授权三方 Login 登录

1.首先到 Facebook Login 登录 官方申请接口

地址:https://developers.facebook.com/docs/facebook-login

获取到接口数据之后,在一门开发者后台输入接口信息

2.在一门开发者后台找 Facebook Login 登录功能模块

Facebook Login 登录

如图,在配置-配置移动版-找到Facebook登录功能

点击功能模块,会弹出模块配置界面;

Facebook Login 登录

在弹出的配置界面,点击勾选打包;

之后点击保存按钮;

3.点击【去配置Facebook】按钮,跳转页面到登录接口信息配置页面

Facebook Login 登录
Facebook Login 登录

如图所示,将在脸书开发中心申请好的APPID填写到这里,之后点击保存;

保存之后,点击左侧的【生成安装包】按钮,在线生成新版APK安装包;

4.在页面HTML网页上执行我们提供的JS映射接口

https://www.yimenapp.com/doc/demo_fblogin.cshtml

根据demo页面的JS代码自行在自己网页上构建撰写JS;

核心代码示例,详情参阅demo

jsBridge.fbLogin.login({
  //字符串数组,需要申请的权限
  //所有可用权限请查看 权限参考文档,部分权限需要 Facebook 审核后才可用
  permissions: [ "public_profile" ]
}, function(succ, data) {
  if (data.result == "success") {
    //data.accessToken.token
    //data.accessToken.userId
    //...
    //请使用 data.accessToken 参数调用服务器端 图谱 API 完成更多操作
    alert("登录成功:\n" + JSON.stringify(data));
  } else if (data.result == "cancel") {
    alert("已取消登录");
  } else if (data.result == "error") {
    alert("错误:" + data.message);
  } else {
    alert(JSON.stringify(data));
  }
});

这样我们在APP内点击对应的按钮即可实现APP拉起脸书APP,并获取到脸书返回的字符串;

之后将获取到的数据绑定到自己数据库,为用户ID一一对应客户的脸书ID。

这样就实现了APP唤起脸书实现三方授权登录了。

sharePhoto 照片 APP开发接入 Facebook Share 分享SDK 实现APP分享到 Facebook 能力

用做网页的技术做APP
一门提供标准化的jsbridge-mini.js库,您只需要在页面引用执行JS即可实现各种原生APP、原生PC的功能能力。

==================APP端==================
【APP端】(安卓版&苹果版)目前提供200+原生功能,2000+JS映射接口,用做网站的技术即可实现各种原生APP能力、APP demo地址https://www.yimenapp.com/doc/demo.cshtml下载教程:
♦ JS-SDK 引用方式:
♦ 普通网页 script 方式加载:下载最新版,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package
一门APP开发平台通用JS

sharePhoto 照片 APP开发接入 Facebook Share 分享SDK 实现APP分享到 Facebook 能力

核心代码示例,详情参阅demo

jsBridge.fbShare.sharePhoto({
  //可选的公共参数
  //...
  //照片数组
  photos: [
    {
      url    : "https://i.cdn.yimenapp.com/sys/1.jpg",
      caption: "图一的说明",
      //照片是用户还是应用生成的 whether the photo represented by this object was generated by the user or by the application
      //布尔类型
      userGenerated: false
    },
    {
      url    : "https://i.cdn.yimenapp.com/sys/2.jpg",
      caption: "图二的说明",
      userGenerated: false
    },
    {
      url    : "https://i.cdn.yimenapp.com/sys/3.jpg",
      caption: "图三的说明",
      userGenerated: false
    }
  ]
}, function(succ, data) {
  if (data.result == "success") {
    alert("成功:" + data.postId);
  } else if (data.result == "cancel") {
    alert("取消");
  } else if (data.result == "error") {
    alert("错误:" + data.message);
  } else {
    alert(JSON.stringify(data));
  }
});

A标签执行JS示例代码

<a href="javascript:void(0)" onclick="zhixing()">执行</a> 
<!-- 写入一个A标签href值为"javascript:void(0)",定义点击事件onclick;-->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- 在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接;-->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.fbShare.sharePhoto({
  //可选的公共参数
  //...
  //照片数组
  photos: [
    {
      url    : "https://i.cdn.yimenapp.com/sys/1.jpg",
      caption: "图一的说明",
      //照片是用户还是应用生成的 whether the photo represented by this object was generated by the user or by the application
      //布尔类型
      userGenerated: false
    },
    {
      url    : "https://i.cdn.yimenapp.com/sys/2.jpg",
      caption: "图二的说明",
      userGenerated: false
    },
    {
      url    : "https://i.cdn.yimenapp.com/sys/3.jpg",
      caption: "图三的说明",
      userGenerated: false
    }
  ]
}, function(succ, data) {
  if (data.result == "success") {
    alert("成功:" + data.postId);
  } else if (data.result == "cancel") {
    alert("取消");
  } else if (data.result == "error") {
    alert("错误:" + data.message);
  } else {
    alert(JSON.stringify(data));
  }
});

}
</script>
<!--执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可;-->

按钮执行JS示例代码

<button onclick="zhixing()" >执行</button>
<!-- //写一个按钮,定义点击执行事件; -->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- //在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接; -->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.fbShare.sharePhoto({
  //可选的公共参数
  //...
  //照片数组
  photos: [
    {
      url    : "https://i.cdn.yimenapp.com/sys/1.jpg",
      caption: "图一的说明",
      //照片是用户还是应用生成的 whether the photo represented by this object was generated by the user or by the application
      //布尔类型
      userGenerated: false
    },
    {
      url    : "https://i.cdn.yimenapp.com/sys/2.jpg",
      caption: "图二的说明",
      userGenerated: false
    },
    {
      url    : "https://i.cdn.yimenapp.com/sys/3.jpg",
      caption: "图三的说明",
      userGenerated: false
    }
  ]
}, function(succ, data) {
  if (data.result == "success") {
    alert("成功:" + data.postId);
  } else if (data.result == "cancel") {
    alert("取消");
  } else if (data.result == "error") {
    alert("错误:" + data.message);
  } else {
    alert(JSON.stringify(data));
  }
});

}
</script>
<!-- //执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可; -->

网站APP打包配置Facebook登录

图:Facebook

网站APP打包也可以配置Facebook登录功能的,选用一门APP打包平台封装你的移动应用,登录一门APP开发者中心即可进行配置该功能;

图:登录一门APP开发者中心

登录一门APP打包平台开发者中心之后,找到需要配置Facebook登录功能的移动应用,点击配置进入配置移动版页面;

图:找到需要配置Facebook功能的应用

进入一门APP配置移动版页面之后,找到配置Facebook登录功能;

图:找到Facebook登录功能

找到Facebook登录功能之后,鼠标左键点击Facebook功能弹出配置页面去勾选打包这个功能并保存;

图:配置Facebook功能

在弹出的配置页面需要先去配置Facebook功能;

图:配置Facebook功能

由于Facebook登录功能属于离线配置功能,配置后需要去重新生成新版的安装包下载安装新版才能测试效果;Facebook功能需要二次开发,开发文档可以参考我们的demo示例,如果您自己没有接入Facebook登录的技术能力,可以联系我们在线客服付费给我们完成Facebook登录功能的二次开发。

目前Facebook登录功能只支持安卓版,如果需要接入苹果版的Facebook登录功能可以联系我们定制该功能。