java - 手动锁定手机后是否可以不重新创建 Activity ?

标签 java android

我正在尝试制作简单的 openGL ES 应用程序(目前正在学习),当我锁定手机或单击返回按钮时,onStop 会自动触发,当我从任务中解锁或打开应用程序时, Activity 会重新创建自己和三角形(来自 android studio opengl es 初学者文档)损坏。

我尝试在应用程序触发 onCreate 时进行记录:

@Override
protected void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);

   Log.w("ONCREATE", "Hello, something happened here.");

   getWindow().getDecorView().setSystemUiVisibility(
             View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                     | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                     | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                     | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
                     | View.SYSTEM_UI_FLAG_FULLSCREEN
                     | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
     mSurface = new SurfaceView(this);
     setContentView(mSurface);
}

我希望我的应用程序不重新创建 Activity (我希望它在实际启动时创建,不再创建)。

谢谢。

最佳答案

不,您不能阻止在屏幕关闭或用户离开时重新创建 Activity。

我建议您通过 official Android Fundamentals 开始您的 Android 之旅。了解 Android 应用程序在受限设备(您的手机/平板电脑)上运行的 Linux 操作系统的受限环境中的生命周期。

当 Activity/应用程序停止时,您应该停止渲染/释放您的 OpenGL 表面,以停止使用用户资源并在您回来后重新创建它。

关于java - 手动锁定手机后是否可以不重新创建 Activity ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56853846/

相关文章:

android - 在 android 中使用 recyclerView 进行分页

android - 使用 getSupportActionBar().setDisplayHomeAsUpEnabled(true) 时看到错误

java - 如何从 Project Tango 点云数据中提取特定颜色?

java - POI - ZIP 条目大小太大

java - 将浏览器页面共享到我的应用程序并获取屏幕截图

java - 如何获取依赖包的版本号?

java - 需要正则表达式\/(反斜杠、正斜杠)

java - 在 Eclipse 中,在哪里可以找到自动包含所选静态导入的选项?

java - FileVisitOption.FOLLOW_LINKS 是唯一可用的 FileVisitOption 吗?

java - 为什么分支预测比完全没有分支要快?