| | |
| | | package com.secondworld.sdk; |
| | | |
| | | import android.os.Bundle; |
| | | import android.view.View; |
| | | import android.widget.FrameLayout; |
| | | import android.support.annotation.NonNull; |
| | | |
| | | import com.secondworld.sdk.utils.LogUtil; |
| | | |
| | | public class GameActivity extends UnityPlayerActivity { |
| | | |
| | | private static Class<? extends GameActivityProxy> proxyClass; |
| | | |
| | | GameActivityProxy proxy; |
| | | |
| | | //注册代理类 |
| | | public static void registerProxy(Class<? extends GameActivityProxy> proxyClass) { |
| | | GameActivity.proxyClass = proxyClass; |
| | | } |
| | | |
| | | @Override |
| | | protected void onCreate(Bundle savedInstanceState) { |
| | | super.onCreate(savedInstanceState); |
| | | // setContentView(R.layout.activity_main); |
| | | checkPermission(); |
| | | // addUnityView(); |
| | | LogUtil.d("GameActivity","启动的是GameActivity!"); |
| | | 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); |
| | | } |
| | | } |
| | | |
| | | private void checkPermission() { |
| | | @Override |
| | | protected void onStart() { |
| | | super.onStart(); |
| | | if (proxy != null) |
| | | proxy.onStart(); |
| | | } |
| | | |
| | | protected void addUnityView() { |
| | | FrameLayout _frameLayout = findViewById(R.id.unity_view); |
| | | View unityView = mUnityPlayer.getView(); |
| | | _frameLayout.addView(unityView); |
| | | @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); |
| | | } |
| | | |
| | | } |