gpt4 book ai didi

Android 自动启动 Activity (应用启动两次)

转载 作者:行者123 更新时间:2023-11-29 02:07:24 25 4
gpt4 key购买 nike

我想在设备启动完成后运行我的应用程序。为此,我在互联网上找到了一些有用的代码:

public class MyBootCompleteReceiver extends BroadcastReceiver
{

@Override
public void onReceive(Context context, Intent intent)
{
if(intent.getAction() != null && intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED))
{
Intent pushIntent = new Intent(context, MainActivity.class);
pushIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

context.startActivity(pushIntent);
}
}
}

和 list 条目:

    <receiver android:name="MyBootCompleteReceiver" android:enabled="true" android:exported="false" android:permission="android.permission.RECEIVE_BOOT_COMPLETED">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</receiver>

现在,如果我启动我的设备,应用程序似乎启动了两次。然后我尝试用“REORDER_TO_FRONT”替换“NEW_TASK”标志(我也在互联网上阅读过这个)但是如果我这样做,我的应用程序会在启动时崩溃。此外,如果我删除所有标志,它也会崩溃。

希望你能帮上忙!

最佳答案

所以...

经过长时间的测试,我发现问题应该是我的物理平板电脑(asus eee pad transfortem android 版本 3.2.1)。

因为我已经在模拟器(android 版本 3.2)中尝试过,并且我发布的源代码(在该线程的顶部)工作得很好。没有两次启动应用程序,也没有错误。即使你删除了“pushIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);”编写代码即可。

所以看来我必须等待更新(可能是在 android 4.0 上)。

我希望这对遇到同样问题的人有所帮助。

关于Android 自动启动 Activity (应用启动两次),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9261119/

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