package com.secondworld.demo;
|
|
import android.app.Activity;
|
import android.os.Bundle;
|
import android.support.annotation.NonNull;
|
|
import com.secondworld.sdk.GameActivityProxy;
|
import com.secondworld.sdk.UnityMsgHandler;
|
import com.secondworld.sdk.utils.CodeU2A;
|
import com.secondworld.sdk.utils.LogUtil;
|
|
import org.json.JSONException;
|
import org.json.JSONObject;
|
|
public class MainActivity extends Activity {
|
|
private static Class<? extends GameActivityProxy> proxyClass;
|
|
GameActivityProxy proxy;
|
|
//注册代理类
|
public static void registerProxy(Class<? extends GameActivityProxy> proxyClass) {
|
MainActivity.proxyClass = proxyClass;
|
}
|
|
@Override
|
protected void onCreate(Bundle savedInstanceState) {
|
super.onCreate(savedInstanceState);
|
setContentView(R.layout.activity_main);
|
try {
|
if (proxyClass != null) {
|
proxy = proxyClass.newInstance();
|
proxy.onCreate(this);
|
} else
|
LogUtil.w("GameActivity", "proxyClass 不存在");
|
} catch (IllegalAccessException | InstantiationException e) {
|
e.printStackTrace();
|
LogUtil.e("GameActivity", e);
|
}
|
findViewById(R.id.btnInit).setOnClickListener((v ->
|
{
|
JSONObject json = new JSONObject();
|
try {
|
json.put("code", CodeU2A.PlatformLogin);
|
} catch (JSONException e) {
|
e.printStackTrace();
|
}
|
UnityMsgHandler.onUnityMessage(json.toString());
|
}));
|
}
|
|
@Override
|
protected void onStart() {
|
super.onStart();
|
if (proxy != null)
|
proxy.onStart();
|
}
|
|
@Override
|
protected void onResume() {
|
super.onResume();
|
if (proxy != null)
|
proxy.onResume();
|
}
|
|
@Override
|
protected void onPause() {
|
super.onPause();
|
if (proxy != null)
|
proxy.onPause();
|
}
|
|
@Override
|
protected void onStop() {
|
super.onStop();
|
if (proxy != null)
|
proxy.onStop();
|
}
|
|
@Override
|
protected void onDestroy() {
|
super.onDestroy();
|
if (proxy != null)
|
proxy.onDestroy();
|
}
|
|
@Override
|
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
|
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
|
if (proxy != null)
|
proxy.onRequestPermissionsResult(requestCode, permissions, grantResults);
|
}
|
|
}
|