我根据我对客人的上方,以及gilsaints88的下面注释(Android L系统的兼容性)解决方案:
这个活动添加到您的AndroidManifest.xml文件:
android:name="com.example.ExitActivity"
android:theme="@android:style/Theme.NoDisplay"
android:autoRemoveFromRecents="true"/>
然后创建一个类ExitActivity.java:
public class ExitActivity extends Activity{
@Override protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
if(android.os.Build.VERSION.SDK_INT >= 21){
finishAndRemoveTask();
}
else{
finish();
}
}
public static void exitApplication(Context context)
{
Intent intent = new Intent(context, ExitActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NO_ANIMATION | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
context.startActivity(intent);
}
}
然后每当要强制关闭应用程序,并从最近的列表中删除,请致电:
ExitActivity.exitApplication(context);
该解决方案对我的作品,而不是宣称的android:excludeFromRecents =“真”,因为我希望用户能够看到应用程序在最近列表中,直到我的应用程序触发关闭应用程序的地步。