准备工作

这里就不详细介绍,主要说一下客户端sdk接入
1、手机上安装Google服务
2、一个绑定信用卡的Google账号;
3、Google play客户端;
4.、Google Play开发者后台创建应用
5、科学上网的工具
…等等 这些就不详细说 主要写一下客户端sdk接入

客户端接入

集成依赖库(支付)

module的 build.gradle 添加下面代码

implementation 'com.google.android.gms:play-services-auth:15.0.0'

初始化

   //配置登录以请求用户的ID,电子邮件地址和基本配置文件.ID和基本配置文件包含在DEFAULT_SIGN_IN中.public GoogleSignInClient mGoogleSignInClient;GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN).requestEmail().requestIdToken("这个id用自己的").build();//使用gso指定的选项构建一个GoogleSignInClient.mGoogleSignInClient = GoogleSignIn.getClient(this, gso);

google登陆

 //google登陆public static void LoginGoogle(){GoogleSignInAccount account = GoogleSignIn.getLastSignedInAccount(appActivity);Log.e("TAG", "LoginGoogle: " + account );if(account!=null && account.getExpirationTimeSecs() < (System.currentTimeMillis()/1000-300)){appActivity.runOnGLThread(new Runnable() {@Overridepublic void run() {Cocos2dxJavascriptJavaBridge.evalString("SystemBridge.OnLoginSuccess(\""+account.getIdToken() + "\",\"" + account.getId() +"\")");}});return;}Intent signInIntent = appActivity.mGoogleSignInClient.getSignInIntent();appActivity.startActivityForResult(signInIntent, 8888);}

重写onActivityResult

   @Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {super.onActivityResult(requestCode, resultCode, data);SDKWrapper.getInstance().onActivityResult(requestCode, resultCode, data);if (requestCode == 8888) {// The Task returned from this call is always completed, no need to attachTask<GoogleSignInAccount> task = GoogleSignIn.getSignedInAccountFromIntent(data);handleSignInResult(task);}//faceBookif (callbackManager != null) {callbackManager.onActivityResult(requestCode, resultCode, data);}}

登陆回调

  //处理登录结果,并回调登录结果private void handleSignInResult(Task<GoogleSignInAccount> completedTask) {try {GoogleSignInAccount account = completedTask.getResult(ApiException.class);String idToken = account.getIdToken();Log.e("TAG", "登陆成功: " + account.getIdToken());//登陆成功appActivity.runOnGLThread(new Runnable() {@Overridepublic void run() {Cocos2dxJavascriptJavaBridge.evalString("SystemBridge.OnLoginSuccess(\""+account.getIdToken() + "\",\"" + account.getId() +"\")");}});} catch (ApiException e) {appActivity.runOnGLThread(new Runnable() {@Overridepublic void run() {Cocos2dxJavascriptJavaBridge.evalString("SystemBridge.OnLoginFail()");}});Log.e("TAG", "登陆失败: " + e.getStatusCode() );Log.e("TAG", "登陆失败: " + e.toString() );}}

这里支付基本上完工了!

cocos creator Android 接入Google登陆sdk相关推荐

  1. cocos creator Android 接入Google支付sdk

    准备工作 1.手机上安装Google服务 2.一个绑定信用卡的Google账号: 3.Google play客户端: 4..Google Play开发者后台创建应用 5.科学上网的工具 -等等 这些就 ...

  2. Cocos Creator Android 平台 Google 原生登录

    在海外项目中,我们通常需要接入 Google 帐号登录,这样可以提高应用使用率. 下面以 Android 平台 接入 Google 原生登录为例,进行详细说明. 一.准备工作 1.需要 Android ...

  3. cocos creator接入微信登陆sdk android篇

    cocos creator接入微信登陆sdk 背景 项目引擎使用cocos creator,使用android studio集成开发工具,在开发之前先做好准备工作 在微信开放平台上创建好移动应用,拿到 ...

  4. cocos creator接入微信登陆sdk ios篇

    cocos creator接入微信登陆sdk ios篇 背景已经在Android篇里面交代过了,有兴趣的朋友可以再看看Android篇 步骤 去微信开放平台下载ios平台所需要的sdk 在" ...

  5. cocos creator ios 接入 facebook sdk login

    主程序是cocos creator 发布ios时要接facebook登录的sdk cocos creator 发布ios版本后 按官方文档配置接入,碰到以下问题 执行 sudo gem install ...

  6. Cocos Creator Android 平台 Facebook 原生登录

    在做海外项目中,经常需要接入Facebook SDK ,现将CocosCreator Android 平台 Facebook 登录的接入流程记录下来,以备有需要的朋友做参考. 一.准备工作 1.首先在 ...

  7. android 添加ga_android开发步步为营之70:android接入Google Analytics总结

    求人不如求己,今天项目里要接入Google Analytics,这个是做应用统计分析用的,可以查看当前手机活跃用户,事件点击等等数据,先看看效果: 之前eclipse里面接入已经成功,昨天项目组决定项 ...

  8. 接入Google Play SDK

    更新 好消息:Unity5.3添加了google play.Mac .AppStore.windows store的IPA接口,我们做内购日后方便多啦!关于国内渠道的接入,推荐通用SDK平台,比如an ...

  9. cocos creator android 真机调试配置密匙

    android 真机调试与打包 真机调式 cocos creator 环境配置完成后 选择 编辑器 => 项目 => 构建发布 => android => 构建 构建完成后打开 ...

最新文章

  1. 一个令人心醉的谜题——DNA和RNA是如何演化出美妙的螺旋结构?
  2. android 程序闪退 log,写了一个android小程序,测试的时候闪退,然鹅log并没有报错...
  3. Python中使用元组对ndarray矩阵的某个维度进行选取和调序的操作
  4. Java、Apache Tomcat下载与安装及环境变量配置
  5. cudaMalloc和cudaMallocPitch
  6. 伪数组转化真数组_ES6 数组方法
  7. WPF视频会议系统资料
  8. 系统学习机器学习之SVM(一)
  9. c语言汇编程序100例,汇编语言100例
  10. 华为核心合作伙伴极力推荐的开源ERP使用教程:Odoo库存管理应用
  11. 显示器点距 测试软件,大既是正义!最佳文本显示点距~AOC LV323HQPX显示器开箱
  12. Android 桌面快捷方式
  13. 2019税改有哪些变化?什么是专项扣除?这些改动与你的工资息息相关!
  14. python寻峰算法_python中的快速寻峰与质心
  15. Windows把桌面改到D盘 Win11怎么把桌面文件路径改到D盘
  16. ThinkPHP 缓存技术详解 使用大S方法
  17. stata回归?固定效应模型(组内变换OR LSDV最小二乘法)
  18. Nuxt - 网站接入 51LA 网站统计详细教程(提供 51LA.js 官方插件与引入教程)
  19. 海底捞市值蒸发2323亿关店300家,火锅“炼金术”还灵验吗?
  20. 1. mysql安装

热门文章

  1. pip安装指定keras版本
  2. #{}与${}的语法
  3. Matlab Simulink 常用快捷操作和功能(1)
  4. 谷歌又发新操作系统了!
  5. 软件定义网络基础(SDN④)
  6. FullCalendar说明文档
  7. npm run serve 报错:Error: error:0308010C:digital envelope routines::unsupported
  8. C语言之栈实现(详细)
  9. Ubuntu 新建用户并赋予权限
  10. echart图表环形图(饼图)