【问题标题】:Android Lollipop calls onCreate after finish()Android Lollipop 在完成后调用 onCreate()
【发布时间】:2014-11-11 21:12:49
【问题描述】:

这是 Android Lollipop 5.0 的一个奇怪行为。 我有两个活动,A 和 B。 A 启动活动 B。当我单击后退按钮时,在活动 B 中,Android 调用 A 上的 onCreate 方法。 此行为仅在 Lollipop 5.0 中可见。 在其他版本中,onCreate 在完成另一个活动后永远不会被调用。

有什么问题?

这是我的清单:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.example"
android:versionCode="1"
android:versionName="1" >

<uses-sdk
    android:minSdkVersion="9"
    android:targetSdkVersion="21" />

<application
    android:name=".Application"
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppThemeMaterial" >
    <meta-data
        android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version" />

    <activity
        android:name=".activities.ActivityA"
        android:configChanges="orientation|keyboardHidden|screenSize"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    <activity
        android:name=".activities.ActivityB"
        android:configChanges="orientation|keyboardHidden|screenSize"
        android:label="@string/activityB" >
    </activity>
</application>

</manifest>

【问题讨论】:

  • 这是完全正常的行为,可以出现在任何设备上...
  • Lollipop 只是比其他版本的 Android 更快地杀死你的后台进程(显然),但这是正常的,并且可以在任何基于垃圾收集的设备上发生。

标签: android android-activity android-5.0-lollipop activity-lifecycle


【解决方案1】:

请确保未选择该选项

开发者选项 -> 不要保留活动

【讨论】:

  • 太棒了!只是好奇这个选项是否会影响正常使用,或者只是影响正在调试的应用程序?
【解决方案2】:

我认为正在发生的事情是,当您离开活动 A 时,onStop() 会在活动 A 上被调用,因为它完全隐藏,而 B 位于它之上。

通常现在当您在按下回onStart() 后恢复活动A 时,会调用onResume()

但是,如果您看到Activity LifeCycle,则在技术上也可以调用onCreate(),以防您的应用程序的进程被系统杀死,如果其他具有更高优先级的应用程序需要更多内存。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多