文章目录

  • 准备工作
  • 正式开始
    • 初始化taptap以及登录监听
    • TapTap登录
    • 收工

接入文档

准备工作

相对来说,taptapsdk接入还有比较简单的;
开始接入之前要在taptap后台获得相关数据

正式开始

  1. 因为项目中不需要用到taptap别的功能,所以接入的是第二种登录(ps:主要第一种登录要收费)

初始化taptap以及登录监听

    // taptap防沉迷初始化private void taptapAntiAddictionInit() {// Android SDK 的各接口第一个参数是当前 Activity,以下不再说明String gameIdentifier = ConstDefine.TAPTAP_APPID;AntiAddictionFunctionConfig config = new AntiAddictionFunctionConfig.Builder().enablePaymentLimit(false) // 是否启用消费限制功能.enableOnLineTimeLimit(true) // 是否启用时长限制功能.build();AntiAddictionUIKit.init(instance, gameIdentifier, config,new AntiAddictionUICallback() {@Overridepublic void onCallback(int code, Map<String, Object> extras) {// 根据 code 不同提示玩家不同信息,详见下面的说明if(null != extras){//                            Log.d(TAG, extras.toString());
//                            Log.d(TAG, String.valueOf(code));}switch (code){case Constants.ANTI_ADDICTION_CALLBACK_CODE.LOGIN_SUCCESS:
//                                Log.d(TAG, extras.toString());Log.d(tapTAG, "防沉迷登陆成功");userInfo.put("result",1);userInfo.put("loginChannelID",m_nLoginChannelID);userInfo.put("CMD",ConstDefine.CMD_THIRDLOGIN);AppActivity.getIncetence().toLuaFunC(instance.m_nEveryThingCallFunC,userInfo.toJSONString());break;case Constants.ANTI_ADDICTION_CALLBACK_CODE.LOGOUT:
//                                Log.d(TAG, extras.toString());Log.d(tapTAG, "防沉迷的登出");userInfo.put("result",0);userInfo.put("loginChannelID",m_nLoginChannelID);userInfo.put("CMD",ConstDefine.CMD_THIRDLOGIN);AppActivity.getIncetence().toLuaFunC(instance.m_nEveryThingCallFunC,userInfo.toJSONString());break;case Constants.ANTI_ADDICTION_CALLBACK_CODE.OPEN_ALERT_TIP:Log.d(tapTAG, "防沉迷未成年允许游戏弹窗");break;case Constants.ANTI_ADDICTION_CALLBACK_CODE.NIGHT_STRICT:Log.d(tapTAG, "防沉迷未成年玩家无法进行游戏");userInfo.put("result",0);userInfo.put("loginChannelID",m_nLoginChannelID);userInfo.put("CMD",ConstDefine.CMD_THIRDLOGIN);AppActivity.getIncetence().toLuaFunC(instance.m_nEveryThingCallFunC,userInfo.toJSONString());break;case Constants.ANTI_ADDICTION_CALLBACK_CODE.REAL_NAME_STOP:Log.d(tapTAG, "防沉迷实名认证过程中点击了关闭实名窗");userInfo.put("result",0);userInfo.put("loginChannelID",m_nLoginChannelID);userInfo.put("CMD",ConstDefine.CMD_THIRDLOGIN);AppActivity.getIncetence().toLuaFunC(instance.m_nEveryThingCallFunC,userInfo.toJSONString());break;case Constants.ANTI_ADDICTION_CALLBACK_CODE.SWITCH_ACCOUNT:Log.d(tapTAG, "防沉迷实名认证过程中点击了切换账号按钮");break;}}});}// 防沉迷登录private void taptapAntiAddictionTapLogin() {AccessToken accessToken = TapLoginHelper.getCurrentAccessToken();String tapTapAccessToken = accessToken.toJsonString();boolean useTapLogin = true;String userIdentifier = tapOpenID;AntiAddictionUIKit.startup(instance, useTapLogin, userIdentifier, tapTapAccessToken);}// taptap登录初始化public void taptapInitOnly() {// 适用于其他国家或地区LoginSdkConfig loginSdkConfig = new LoginSdkConfig(true, true, RegionType.CN);TapLoginHelper.init(getApplicationContext(), ConstDefine.TAPTAP_APPID, loginSdkConfig);}

TapTap登录

    // taptap登录private void taptapLoginOnly() {TapLoginHelper.TapLoginResultCallback loginCallback = new TapLoginHelper.TapLoginResultCallback() {@Overridepublic void onLoginSuccess(AccessToken token) {Log.d(tapTAG, "TapTap authorization succeed");// 开发者调用 TapLoginHelper.getCurrentProfile() 可以获得当前用户的一些基本信息,例如名称、头像。Profile profile = TapLoginHelper.getCurrentProfile();tapOpenID = profile.getOpenid();userInfo = new JSONObject();userInfo.put("openId",profile.getOpenid());userInfo.put("unionId",profile.getUnionid());userInfo.put("username",profile.getName());userInfo.put("avatar",profile.getAvatar());Log.d("taptap登录成功个人信息", userInfo.toJSONString());taptapAntiAddictionTapLogin();}@Overridepublic void onLoginCancel() {Log.d(tapTAG, "TapTap authorization cancelled");}@Overridepublic void onLoginError(AccountGlobalError globalError) {Log.d(tapTAG, "TapTap authorization failed. cause: " + globalError.getMessage());}};TapLoginHelper.registerLoginCallback(loginCallback);TapLoginHelper.startTapLogin(instance, TapLoginHelper.SCOPE_PUBLIC_PROFILE);}

收工

Android接入TapTap踩坑相关推荐

  1. Android google翻译踩坑之旅

    # Android google翻译踩坑之旅   最近由于工作需求,需要为游戏Android平台接入Google翻译的SDK,由于关于翻译的文章非常少,访问官方文档又需要翻墙,更可气的是找到的博客写了 ...

  2. Android Studio安装踩坑

    title: Android Studio安装踩坑 date: 2018-09-07 19:31:32 updated: tags: [Android,Android Studio,坑] descri ...

  3. Konga面板接入LDAP踩坑实战

    Konga面板接入LDAP踩坑实战 基于docker-compose构建konga面板,脚本内容如下: docker-compose.yml version: '3.7'services:konga: ...

  4. android 字体文件压缩,Android 字体使用踩坑指南

    Android 字体使用踩坑指南 最近项目改版,根据ui的设计,需要使用到三字体.在使用过程中遇到一些坑,于是有了这个避坑指南! 字体压缩 第一个坑!字体库的体积太大. 字体压缩的前提是要使用的内容是 ...

  5. Android BLE蓝牙踩坑总结

    简介 自从Android-BLE库开源了一段时间以来,越来越多的小伙伴问到了各种各样的关于BLE的奇怪问题,在这里我想跟大家分享一下本人对于Android BLE蓝牙的一些看法和解决方式,避免刚接触的 ...

  6. android gradle权威指南pdf_干货 | 携程 Android 10适配踩坑指南

    作者简介 曙光,携程资深软件工程师,负责市场营销相关研发及管理工作.2019 年 9 月 3 日,Google 发布了 Android 10 正式版.Android 10 聚焦移动创新.安全隐私和数字 ...

  7. android 人脸识别踩坑实录

    随着AI技术的发展,人脸识别的应用场景越来越多,提供技术支持的API也有好多可以选择,但是大部分都是需要收费的,或者免费试用.由此可见人脸识别算法确实是核心技术,不是随便就可以获取到的.经过多次尝试, ...

  8. Android ijkplayer 编译踩坑与记录(ijk0.8.8--ffmpeg4.0)

    本文记录了 ijkplayer 的编译完整流程,以及编译过程中遇到的坑及解决方案,如果不想自己编译,可以使用我编译好的结果.已放入 github: ijkplayer_Build4Android 编译 ...

  9. android 默认输入法,踩坑之Android默认输入法配置

    前言 在实际项目开发过程中,需要集成客户的输入法,但Android原生并不支持输入法的配置.在这里记录下实际操作. 支持默认输入法配置 Android原生并不支持默认输入法的设置,默认就是谷歌原生的输 ...

  10. Android LottieAnimation使用---踩坑篇

    LottieAnimation众所周知是Airbnb出的一个实现复杂动画的一个框架,可以在Android,IOS等平台使用.使用的步骤也非常简单.但本文不是讲解它的使用.Lottie虽然好用,但也不是 ...

最新文章

  1. Unix的标准I/O与重定向的若干概念解析
  2. 目标跟踪学习算法DSST
  3. oracle SYS and SYSTEM Schemas
  4. rfcomm工具的使用方法 创建/dev/rfcomm0 并检测
  5. mysql查询结果导出excel_Mysql查询结果导出为Excel的几种方法
  6. Cocos Creator 你不知道的细节
  7. Metronik 案例分享:使用 Aspose.Words 快速生成模板。
  8. idea无法使用mvn命令
  9. 这种技术能够替代 Android 原生开发?
  10. 墨刀和axure你应该用哪个?
  11. Android竖虚线绘制
  12. 双系统安装 Ubuntu 18.04 以及删除双系统中的 Ubuntu 的方法
  13. 用myeclipse向Tomcat发布项目的时候出现发布的项目名和文件名称不一致的现象的解决方法(图文)
  14. bootstrap fileupload 使用详解~~
  15. ESP32 开发笔记(三)源码示例 8_DHT11_RMT 使用RMT实现读取DHT11温湿度传感器
  16. 常用的排序算法-快速记忆
  17. 使用chalk时颜色不变的问题解决
  18. python中的*与**用法详解
  19. 搭建gloo网关(基于envoy)的wasm实验环境(阿里云、本机)
  20. 关于合成孔径声纳技术一点感想

热门文章

  1. 手机邮箱设置qq服务器,手机设置qq邮箱
  2. 为何现在只剩下 风吹乱我的发
  3. Redis高级特性之神奇的HyperLoglog解决统计问题
  4. c语言发生错误文件无效或损坏,VC2010编译时提示:转换到 COFF 期间失败: 文件无效或损坏...
  5. 在不同场景里,用户使用手机时的认知水平和操作绩效
  6. 字大小数据 - 快速取模的C++实现
  7. 【科研】经典演讲“You and Your Research”
  8. android手表微信运动,华为手表(华为运动健康APP)终于能绑定微信运动
  9. 【绕口令】打南边来了个喇嘛(转载)
  10. 西安大略大学计算机专业排名,加拿大大学计算机专业排名一览