@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,但是在我看到日志“用户存在”之后大约3秒后启动MainActivity,而不是立即启动。 我需要立即开始以获得更好的用户体验。
我想知道有没有办法可以让MainActivity更快启动?
PS:当我在另一个活动中使用一个按钮来启动MainActivity时,它立即启动,是否可能是BroadcastReceiver中的方法“context.startActivity(i)”更慢?
答案 0 :(得分:1)
您可以添加到Intent对象的标志,可以帮助您实现目标。此外,当用户在场时,仅在设备解锁后(提示)。
<强>更新强>
显然意图标志不再出现在API中,令人失望。然而;使用KeyguardManager可以实现此功能,作为解决问题的一部分。