0
@Override
public void onReceive(Context context, Intent intent) {
    Log.i("TEST", "user is present");
    Intent i = new Intent(context, MainActivity.class);
    i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    context.startActivity(i);
}

我想在收到意图后立即启动我的应用程序的 MainActivity ,但是 MainActivity 在我看到日志“用户存在”后大约 3 秒后启动,而不是立即启动。我需要它立即启动以获得更好的用户体验。

我想知道是否有一种方法可以让 MainActivity 启动得更快?

PS:当我在另一个活动中使用按钮启动MainActivity时,它立即启动,是不是BroadcastReceiver中的“context.startActivity(i)”方法比较慢?

4

1 回答 1

1

您可以向 Intent 对象添加一些标志,以帮助您实现目标。此外,当用户在场时,这仅是在设备解锁后(提示)

更新

显然,意图标志不再在 API 中,真烦。然而; 使用 KeyguardManager,您可以将其作为解决问题的一部分来实现。

于 2012-07-15T11:44:11.047 回答