Android从内存清除活动

时间:2016-10-01 11:40:35

标签: android android-activity

在我的应用程序中,我有一个SIP呼叫功能。
当应用程序未打开并从系统内存中清除并接收来电时,它会从SIP服务打开呼叫活动。
当呼叫断开时,我完成了活动。

但问题是,活动仍在内存中(当按下主页按钮时)。
我想要活动不在记忆中。
就像什么应用程序调用行为,当应用程序被杀时不会在内存中保持活动,即不在内存中。

从SIP服务我称之为。

Intent intentIncomingCall = new Intent(getApplicationContext(), CallActivity.class);
intentIncomingCall.putExtra("DisplayName", callerDisplayName);
intentIncomingCall.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intentIncomingCall);

并且在通话断开时,我只是简单地停止服务并在活动上呼叫finish() 我已经尝试添加标志和exit(),但没有任何作用。

3 个答案:

答案 0 :(得分:2)

 android:allowTaskReparenting="false"
        android:excludeFromRecents="true"
        android:launchMode="singleTask"
        android:permission="android.permission.USE_SIP"
        android:screenOrientation="portrait"
        android:taskAffinity=""

尝试将以上属性添加到清单

中的活动

答案 1 :(得分:0)

在finish()方法下面添加一行:

finish();
System.exit(0);

答案 2 :(得分:0)

当callClosed回调时,
    System.exit(0);

    android.os.Process.killProcess(android.os.Process.myPid());