package com.secondworld.univeralsdk; import android.Manifest; import android.app.AlertDialog; import android.content.DialogInterface; import android.content.Intent; import android.content.pm.PackageManager; import android.content.res.Configuration; import android.net.Uri; import android.os.Bundle; import android.os.Process; import android.provider.Settings; import android.support.v4.content.PermissionChecker; import android.view.View; import android.widget.FrameLayout; import com.unity3d.player.UnityPlayerActivity; public class MainActivity extends UnityPlayerActivity { private static final String TAG = "MainActivity"; // 启用6.0以上权限回调code // private static final int CODE_REQUEST_PERMISSION = 1000; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); LogUtil.i(TAG, "onCreate"); LogUtil.init(this, true); setContentView(R.layout.activity_main); FrameLayout _frameLayout = (FrameLayout) findViewById(R.id.unity_view); View unityView = mUnityPlayer.getView(); _frameLayout.addView(unityView); H2EngineSDK.onCreate(savedInstanceState); } @Override protected void onNewIntent(Intent intent) { H2EngineSDK.onNewIntent(intent); super.onNewIntent(intent); LogUtil.i(TAG, "onNewIntent"); } @Override public void onConfigurationChanged(Configuration newConfig) { H2EngineSDK.onConfigurationChanged(newConfig); super.onConfigurationChanged(newConfig); LogUtil.i(TAG, "onConfigurationChanged"); } @Override protected void onStart() { H2EngineSDK.onStart(); super.onStart(); LogUtil.i(TAG, "onStart"); } @Override protected void onStop() { H2EngineSDK.onStop(); super.onStop(); LogUtil.i(TAG, "onStop"); } @Override protected void onResume() { H2EngineSDK.onResume(); super.onResume(); LogUtil.i(TAG, "onResume"); // 检测本地存储权限是否有, 没有的话要提示用户 if (PermissionChecker.checkPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE, Process.myPid(), Process.myUid(), getPackageName()) != PackageManager.PERMISSION_GRANTED || PermissionChecker.checkPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE, Process.myPid(), Process.myUid(), getPackageName()) != PackageManager.PERMISSION_GRANTED) { new AlertDialog.Builder(this) .setMessage("应用没有存储读取权限,点击确定至设置中开启,否则无法继续游戏.") .setCancelable(false) .setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialogInterface, int i) { UniversalUtil.hasGoToSetting = true; Intent intent = new Intent( Settings.ACTION_APPLICATION_DETAILS_SETTINGS); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); Uri uri = Uri.fromParts("package", getPackageName(), null); intent.setData(uri); startActivity(intent); } }) .setNegativeButton("拒绝", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialogInterface, int i) { finish(); } }) .show(); } } @Override protected void onPause() { H2EngineSDK.onPause(); super.onPause(); LogUtil.i(TAG, "onPause"); } @Override protected void onDestroy() { H2EngineSDK.onDestroy(); super.onDestroy(); LogUtil.i(TAG, "onDestroy"); } @Override protected void onRestart() { H2EngineSDK.onRestart(); super.onRestart(); LogUtil.i(TAG, "onRestart"); } }