MainPresenter.java 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. package org.cocos2dx.javascript.presenter;
  2. import android.os.Process;
  3. import android.view.KeyEvent;
  4. import android.widget.Toast;
  5. import com.google.gson.Gson;
  6. import org.cocos2dx.javascript.AppActivity;
  7. import org.cocos2dx.javascript.util.DeviceUtil;
  8. import org.cocos2dx.javascript.util.Logger;
  9. import org.cocos2dx.javascript.util.PackageUtil;
  10. import org.cocos2dx.lib.Cocos2dxJavascriptJavaBridge;
  11. public class MainPresenter {
  12. private static AppActivity mActivity;
  13. private static DeviceUtil mDeviceUtil;
  14. private static PackageUtil mPackageUtil;
  15. private static Gson mGson;
  16. public MainPresenter(AppActivity activity) {
  17. mActivity = activity;
  18. mGson = new Gson();
  19. mDeviceUtil = new DeviceUtil();
  20. Logger.e("getWidth:" + mDeviceUtil.getWidth(mActivity));
  21. Logger.e("getHeight:" + mDeviceUtil.getHeight(mActivity));
  22. mPackageUtil = new PackageUtil(activity);
  23. }
  24. public static String getVersionCode() {
  25. return mDeviceUtil.getVersionCode(mActivity);
  26. }
  27. public static void showToast(final String message) {
  28. mActivity.runOnUiThread(new Runnable() {
  29. @Override
  30. public void run() {
  31. Toast.makeText(mActivity, message, Toast.LENGTH_SHORT).show();
  32. }
  33. });
  34. }
  35. public static String getSystemAppsJson() {
  36. return mGson.toJson(mPackageUtil.getSystemAppList()).toString();
  37. }
  38. public static String getOtherAppsJson() {
  39. return mGson.toJson(mPackageUtil.getOtherAppList()).toString();
  40. }
  41. public static void hideGameScene() {
  42. mActivity.runOnUiThread(new Runnable() {
  43. @Override
  44. public void run() {
  45. // mActivity.getGLSurfaceView().setVisibility(View.GONE);
  46. mActivity.getGLSurfaceView().setZOrderOnTop(true);
  47. // mActivity.getGLSurfaceView().setBackgroundColor(Color.TRANSPARENT);
  48. }
  49. });
  50. }
  51. public static void hideSplashImage() {
  52. mActivity.runOnUiThread(new Runnable() {
  53. @Override
  54. public void run() {
  55. mActivity.removeSplashImage();
  56. }
  57. });
  58. }
  59. public static void exitApp() {
  60. mActivity.runOnUiThread(new Runnable() {
  61. @Override
  62. public void run() {
  63. mActivity.finish();
  64. android.os.Process.killProcess(Process.myPid());
  65. }
  66. });
  67. }
  68. public boolean onKeyDown(int keyCode, KeyEvent event) {
  69. switch (keyCode) {
  70. case KeyEvent.KEYCODE_BACK:
  71. case KeyEvent.KEYCODE_ESCAPE:
  72. mActivity.runOnGLThread(new Runnable() {
  73. @Override
  74. public void run() {
  75. Cocos2dxJavascriptJavaBridge.evalString("PUBLIC.keyBack()");
  76. }
  77. });
  78. return true;
  79. }
  80. return false;
  81. }
  82. }