java - 开机完成后需要立即启动app

标签 java android

我想知道为什么我的应用在安卓真机上开机后没有立即运行?我的应用程序在启动几秒钟后运行。

我的代码是

public class AutoStart extends BroadcastReceiver{

    @Override
    public void onReceive(Context context, Intent intent) {
        // TODO Auto-generated method stub
         if (intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)){
                Intent i = new Intent(context, MyActivity.class);
                i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                context.startActivity(i);
            }
    }

}

我的 Activity 正在运行,但在几秒钟后启动完成。有没有可能减少这几秒?

我想立即运行我的应用程序。我不想让用户访问电话。

最佳答案

这可以增加您的优先级,但仍然会有一些延迟。由于 android 首先加载其操作系统,然后所有其他 Activity 开始。

<receiver
    android:name=".AutoStart"
    android:enabled="true"
    android:exported="true"
    <intent-filter android:priority="1000">
        <action android:name="android.intent.action.BOOT_COMPLETED" />
    </intent-filter>
</receiver>

关于java - 开机完成后需要立即启动app,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16932701/

相关文章:

java - 对根据输入大小平均不同排序算法的持续时间感到困惑吗?

java - 带有 c3p0 数据库池和故障转移的 Spring Boot JDBCTemplate

java - 在序列化之前锁定 Java 对象

java - @override onResume 使用但屏幕重置

android - 在Android中播放声音

presenter 执行 retrofit 调用后调用的 Android 测试方法

java - 是什么导致了 NoSuchMethodError 和 NoClassDefFoundError?

java - 将嵌套循环转换为流 Java 8

Android:如何使用 CameraX 裁剪图像?

c# - 带有图标的 Xamarin.Forms 列表应用程序(仅限 Android)