【原生】CocosCreator TapTap接入


Cocos版本:2.4.4

 

一 注冊TapTap賬號

二 參考文檔創建游戲、下載SDK

三 接入SDK

四 登錄

 

一 注冊TapTap賬號

TapTap開發者中心注冊賬號,提交身份證、手機號等注冊開發者賬號,需要一段時間審核后,才能進行接入。

 

二 參照文檔創建游戲、下載SDK

TapTap開發者文檔中心去,根據文檔創建游戲,並下載SDK。

 

三 接入SDK

1 引入TapSDK到項目

android studio中選擇項目顯示方式為Project,並將TapSDK文件復制到libs文件夾下,如果libs沒有則創建一個。

 

2 修改build.gradle

需要修改build.gradle文件如下,參考 TapTap快速開始-項目配置LeanCloud JavaSDK配置指南

flatDir:添加一個常規目錄作為倉庫。它允許你在dependency塊中從該目錄添加文件

cn.leancloud:realtime-android:8.0.4 :Android 推送、LiveQuery、即時通訊 library

cn.leanclound:storage-android:8.0.4:storage-android,Android 存儲 library

io.reactivex.rxjava2:rxandroid:2.1.1:RxJava提供了響應式編碼規范,而RxAndroid是專供Android平台的RxJava

 

 

修改build.gradle文件,引入libs下的aar文件

 

 3 修改最低版本miniSdkVersion

修改miniSdkVersion,修改后報錯提示需要至少sdk版本21和26。嘗試修改為21,如果不行就修改為26。

 

 

修改最低版本,找到gradle.properties文件,修改PROP_MIN_SDK_VERSION屬性

 

修改后保存,會彈出提示,點擊右上角sync now

 

4 重復命名的文件報錯

 

在build.gradle中android{}下增加如下代碼。exclude:在打包時移除項目中的相關文件,不打入apk文件中。

增加完成后,需要重啟Android Studio

    packagingOptions {
        exclude 'META-INF/proguard/okhttp3.pro'
    }

 

 

5 檢測游戲是否可以正常運行

修改完成后,在java中打TapConfig之類是沒有代碼提示的,不要在android studio里rebuild project,到cocos重新構建一次就有提示了。

在真機上運行一次游戲,看是否報錯。沒錯的話,那么說明修改配置生效。

 

四  登錄

初始化

        //taptap初始化
        TapConfig tdsConfig = new TapConfig.Builder()
                .withAppContext(AppActivity.this)  // Context 上下文
                .withClientId("nN7RH4JntmB6vngt0l")  // 開發者中心對應 Client ID
                .withClientToken("oGLtCFzTsqioTm0hcIXbMVetOMUntKuc9fCiCBwl")  // 開發者中心對應 Client Token
                .withServerUrl("https://www.biliking.com")  // 開發者中心 > 你的游戲 > 游戲服務 > 技術服務 > 數據存儲 > 文件 > 設置 > 文件訪問域名 綁定域名
                .withRegionType(TapRegionType.CN)  // TapRegionType.CN: 國內  TapRegionType.IO: 國外
                .build();
        TapBootstrap.init(AppActivity.this, tdsConfig);

  

所需要的 clientID、Client Token游戲服務-應用配置

 

綁定域名在游戲服務-技術服務-數據存儲-文件-設置中,這個綁定域名需要自己設置下。

 

 

進行登錄,我這里TDSUser resultUser會報錯,根本沒有getObjectId()這些方法。

        //判斷登錄狀態
        if (null == TDSUser.currentUser()) {
            // 未登錄
            TDSUser.loginWithTapTap(AppActivity.this, new Callback<TDSUser>() {
                @Override
                public void onSuccess(TDSUser resultUser) {
                    Toast.makeText(AppActivity.this, "succeed to login with Taptap.", Toast.LENGTH_SHORT).show();
                    // 開發者可以調用 resultUser 的方法獲取更多屬性。
                    Log.v("TapTap","登錄成功:" + resultUser);
                    //String userId = resultUser.getObjectId();  // 用戶唯一標識
                    //String avatar = (String) resultUser.get("avatar");  // 頭像
                    //String nickName = (String) resultUser.get("nickname");  // 昵稱
                }

                @Override
                public void onFail(TapError error) {
                    Log.v("TapTap","登錄失敗:" + error);
                    Toast.makeText(AppActivity.this, error.getMessage(), Toast.LENGTH_SHORT).show();
                }
            }, TapLoginHelper.SCOPE_PUBLIC_PROFILE);
        } else {
            // 已登錄
        }

  

 登錄前,先得去游戲服務-生態服務-TapTap登錄里新增安卓包,需要包名和簽名。如果沒有在這里配置的話,直接調用Tap登錄接口會提示沒有signxxx什么的,無法登錄。

 

 

包名從AndroidManifest.xml文件得package獲得

 

 

簽名可以下載簽名生成工具獲得

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM