// TODO GAME 在onNewIntent中需要调用handleCallback将平台带来的数据交给MSDK处理 @Override protected void onNewIntent(Intent intent) { Logger.d("onNewIntent"); super.onNewIntent(intent); // TODO GAME 处理游戏被拉起的情况 // launchActivity的onCreat()和onNewIntent()中必须调用 // WGPlatform.handleCallback()。否则会造成微信登录无回调 if (WGPlatform.wakeUpFromHall(intent)) { Logger.d("LoginPlatform is Hall"); Logger.d(intent); } else { Logger.d("LoginPlatform is not Hall"); Logger.d(intent); WGPlatform.handleCallback(intent); } }
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // TODO GAME 游戏需自行检测自身是否重复, 检测到吃重复的Activity则要把自己finish掉 // 注意:游戏需要加上去重判断finish重复的实例,否则可能发生重复拉起游戏的问题。游戏可自行决定重复的判定。 if (WGPlatform.IsDifferentActivity(this)) { Logger.d("Warning!Reduplicate game activity was detected.Activity will finish immediately."); this.finish(); return; } requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.main_layout); // TODO GAME 初始化MSDK /** * ********************************************************* TODO GAME 接入必须要看, * baseInfo值因游戏而异,填写请注意以下说明: baseInfo值游戏填写错误将导致 QQ、微信的分享,登录失败 ,切记 !!! * 只接单一平台的游戏请勿随意填写其余平台的信息,否则会导致公告获取失败 offerId 为必填,一般为手QAppId * ********************************************************* */ MsdkBaseInfo baseInfo = new MsdkBaseInfo(); baseInfo.qqAppId = "100703379"; baseInfo.qqAppKey = "4578e54fb3a1bd18e0681bc1c734514e"; baseInfo.wxAppId = "wxcde873f99466f74a"; baseInfo.msdkKey = "5d1467a4d2866771c3b289965db335f4"; baseInfo.offerId = "100703379"; // TODO GAME 自2.7.1a开始游戏可在初始化msdk时动态设置版本号,灯塔和bugly的版本号由msdk统一设置 // 1、版本号组成 = versionName + versionCode // 2、游戏如果不赋值给appVersionName(或者填为"")和appVersionCode(或者填为-1), // msdk默认读取AndroidManifest.xml中android:versionCode="51"及android:versionName="2.7.1" // 3、游戏如果在此传入了appVersionName(非空)和appVersionCode(正整数)如下,则灯塔和bugly上获取的版本号为2.7.1.271 baseInfo.appVersionName = "2.8.2"; baseInfo.appVersionCode = 282; // 注意:传入Initialized的activity即this,在游戏运行期间不能被销毁,否则会产生Crash WGPlatform.Initialized(this, baseInfo); // 设置拉起QQ时候需要用户授权的项 WGPlatform.WGSetPermission(WGQZonePermissions.eOPEN_ALL); // 设置java层或c++层回调,如果两层都设置了则会只回调到java层 if (LANG.equals("java")) { // 全局回调类,游戏自行实现 WGPlatform.WGSetObserver(new MsdkCallback(this)); } else { // cpp层 回调设置 PlatformTest.setObserver(true); PlatformTest.WGLogPlatformSDKVersion(); PlatformTest.SetActivity(this); } // MSDKDemo 界面实现 initView(); // TODO GAME 处理游戏被拉起的情况 // launchActivity的onCreat()和onNewIntent()中必须调用 // WGPlatform.handleCallback()。否则会造成微信登录无回调 if (WGPlatform.wakeUpFromHall(this.getIntent())) { // 拉起平台为大厅 Logger.d("LoginPlatform is Hall"); Logger.d(this.getIntent()); } else { // 拉起平台不是大厅 Logger.d("LoginPlatform is not Hall"); Logger.d(this.getIntent()); WGPlatform.handleCallback(this.getIntent()); } isFirstLogin = true; }