|  |  |  | 
|---|
|  |  |  | { | 
|---|
|  |  |  | //内置事件 “支付”,属性:商品类型,商品名称,商品ID,商品数量,支付渠道,币种,是否成功(必传),金额(必传) | 
|---|
|  |  |  | // 付费金额单位为元 | 
|---|
|  |  |  | //mount为分,0.1折 需除以10000获得真实金额,但抖音必须传元 向上取整,则充6分钱上报是1元 造成数据偏差 | 
|---|
|  |  |  | GameReportHelper.onEventPurchase("gift", title, | 
|---|
|  |  |  | goodsID,1, "youxitu","¥", true, (int)Math.ceil(mount/10000)); | 
|---|
|  |  |  | //mount为元,0.1折 需除以100获得真实金额,但抖音必须传元 向上取整,则充6分钱上报是1元 造成数据偏差 | 
|---|
|  |  |  | int reportMoney = (int)Math.ceil(mount/100); | 
|---|
|  |  |  | LogUtil.i("unity", "reportMoney " + title + " " + reportMoney); | 
|---|
|  |  |  | GameReportHelper.onEventPurchase("gift", title, goodsID,1, "youxitu","¥", true, reportMoney); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | return new String[] {}; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public void RegisterEvent(String platform) { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | Boolean status = GameActivityProxy.I.activity.getSharedPreferences("file",Context.MODE_PRIVATE) | 
|---|
|  |  |  | .getBoolean("AGREE",false); | 
|---|
|  |  |  | if (status == true){ | 
|---|
|  |  |  | Login(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public void Login() | 
|---|
|  |  |  | public void LoginSuccess() | 
|---|
|  |  |  | { | 
|---|
|  |  |  | switch (QuickSdkMgr.I.sdkInitState) { | 
|---|
|  |  |  | case FAILED: | 
|---|
|  |  |  | { | 
|---|
|  |  |  | if (GameActivityProxy.I.activity == null) | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | if (QuickSdkMgr.I.hasPermissions(GameActivityProxy.I.activity)) { | 
|---|
|  |  |  | //init(BtGameMain.I.activity); | 
|---|
|  |  |  | Toast.makeText(GameAppProxy.app, "异常请重启游戏", Toast.LENGTH_LONG).show(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | case SUCCEED: { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //User.getInstance().login(GameActivityProxy.I.activity); | 
|---|
|  |  |  | GameActivityProxy.I.activity.runOnUiThread(new Runnable() | 
|---|
|  |  |  | { | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public void run() | 
|---|
|  |  |  | { | 
|---|
|  |  |  | User.getInstance().login(GameActivityProxy.I.activity); | 
|---|
|  |  |  | GameReportHelper.onEventRegister("youxitu",true); | 
|---|
|  |  |  | GameActivityProxy.I.activity.getSharedPreferences("file", Context.MODE_PRIVATE).edit() | 
|---|
|  |  |  | .putBoolean("AGREE", true) | 
|---|
|  |  |  | .apply(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | case UNKNOWN: | 
|---|
|  |  |  | { | 
|---|
|  |  |  | QuickSdkMgr.I.sdkInitState = PlatformSdkMgr.SdkInitState.LOADING; | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | case LOADING: { | 
|---|
|  |  |  | //Toast.makeText(GameAppProxy.app, "账号登录成功后,请再次点击进入游戏", Toast.LENGTH_LONG).show(); | 
|---|
|  |  |  | Boolean status = GameActivityProxy.I.activity.getSharedPreferences("file",Context.MODE_PRIVATE) | 
|---|
|  |  |  | .getBoolean("AGREE",false); | 
|---|
|  |  |  | if (status == false) { | 
|---|
|  |  |  | QuickSdkMgr.I.requestPermissions(GameActivityProxy.I.activity); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | LogUtil.i("unity", "LoginSuccess"); | 
|---|
|  |  |  | GameReportHelper.onEventRegister("youxitu",true); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public void StartRequestPermission() | 
|---|
|  |  |  | { | 
|---|
|  |  |  | //读标志 二次登录可以直接初始化 | 
|---|
|  |  |  | Boolean status = GameActivityProxy.I.activity.getSharedPreferences("file",Context.MODE_PRIVATE) | 
|---|
|  |  |  | .getBoolean("AGREE",false); | 
|---|
|  |  |  | if (status == true){ | 
|---|
|  |  |  | QuickSdkMgr.I.requestPermissions(GameActivityProxy.I.activity); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //获取渠道名称 context为宿主的context | 
|---|
|  |  |  | String channel = HumeSDK.getChannel(GameAppProxy.app.getApplicationContext()); | 
|---|
|  |  |  | if (channel == null || channel.isEmpty()) | 
|---|
|  |  |  | 
|---|
|  |  |  | AppLog.start(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public void OnRequestPermissionsResult(int requestCode, int[] grantResults, String[] permissions) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | LogUtil.i("unitysdk", "OnRequestPermissionsResult " + permissions.length); | 
|---|
|  |  |  | if (Arrays.asList(permissions).contains(Manifest.permission.READ_PHONE_STATE)) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | Login(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|