gpt4 book ai didi

android - 为什么我不能终止使用 killBackgroundProcesses 开始的 Activity?

转载 作者:行者123 更新时间:2023-11-30 04:15:13 26 4
gpt4 key购买 nike

好吧,我被难住了:-(

作为实验,我一直在尝试启动一个 Activity,然后在稍后使用 ActivityManager 包中的 killBackgroundProcesses 将其关闭。我没有收到任何错误。它似乎什么也没做。

下面的代码已经尽可能地缩小了范围。就像测试一样,我启动了 Activity(成功),然后当我的 onPause 方法被调用时,我尝试并停止我刚刚开始的操作(在我的真实代码中,这发生得晚得多)。

键入此内容时,我突然想到,对当前屏幕上的 Activity 使用 killBackgroundProcesses 可能没有意义。如果是这样,是否还有其他方法可以停止此 Activity?我没有这个其他应用程序的源代码,我启动了它,现在我只想让它消失。而且我也意识到这不是正常的 Activity 生命周期行为,但至少现在,这对我来说是一个特例。

如果有任何见解或解决方案,我将不胜感激。

谢谢!

list :

...
<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"/>
...

代码:

public class MainActivity extends Activity
{
static String PACKAGE = "com.abc.def";

...

Intent i = getPackageManager().getLaunchIntentForPackage( PACKAGE );
startActivity( i );
...

@Override
protected void onPause()
{
// just to see if we can, kill the activity we just started
ActivityManager manager = (ActivityManager)getApplicationContext().getSystemService( Context.ACTIVITY_SERVICE );

manager.killBackgroundProcesses( PACKAGE );
}
}

最佳答案

调用 killBackgroundProcesses 仅允许 Android 框架(内部系统或合作伙伴 rom 开发人员,如 HTC、三星等),不允许第三方应用程序。相反,您应该在 Activity 的 onPauseonStop 方法上调用 finish(); 以在它离开屏幕时自动销毁它。

关于android - 为什么我不能终止使用 killBackgroundProcesses 开始的 Activity?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10155964/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com