android - onDestroy 正在调用 当手机屏幕关闭时

标签 android android-service

我创建了一个sip 调用。当手机屏幕打开时,如果我收到任何来电,一切正常。我的意思是 onStart() 被调用并且 onDestroy() 没有被调用。所以我可以接听电话。 但是当手机屏幕关闭并且收到来电时。我看到 onStart() 被调用,并且 onDestroy() 也被调用。我看到 android 进程会自动终止此 Activity 。

android 2.3版本没有这个问题。我在最新版本中看到了这个。

有什么解决办法吗?我的 onDestroy() 方法不应被调用。仅当我退出 Activity 时才应调用它。

最佳答案

是的,仅使用“横向”屏幕时会出现问题,因为屏幕内部会更改为“纵向”。

为防止出现这种情况,请在屏幕打开或关闭时调用onDestroy()

  1. 添加带有 "orientation|screenSize" 属性的 AndroidManifest.xml 文件。
  2. onConfigurationChanged() 方法添加到您的 Activity

AndroidManifest.xml

<activity
   …
   android:screenOrientation="landscape"
   android:configChanges="keyboardHidden|orientation|screenSize">

并添加到您的 Activity 中:

…
@Override
public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);
}

关于android - onDestroy 正在调用 当手机屏幕关闭时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16710138/

相关文章:

来自服务器的 Android 通知

ANDROID - AlarmManager 调用的服务在销毁后不会停止

android - 翻译动画后如何移动按钮?

android - Uncaught ReferenceError : FileTransfer is not defined (using cordova 2. 7.0)

android - 无法在我的 Nexus 4(未经授权的手机)上运行我的应用程序

java - Android R 无法解析为变量

java - 添加暂停和恢复 addCircle 到 map api v2

android - 从其他 Activity 中引用静态 ServiceConnection 是否正确?

android - 我应该在应用程序还活着的时候维护一个连接的 GoogleApiClient 吗?

android - 停止通过 Notification Intent 传递的服务