gpt4 book ai didi

android - 检测用户是否启动应用程序,android

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

在此先感谢您的帮助。

我有一个应用程序,可以由用户实际启动应用程序(就像您启动任何普通应用程序一样)或通过重复服务启动。根据启动应用程序的内容(用户或服务),我想执行不同的初始化操作。我如何才能检测到用户是否在不执行任何自定义操作的情况下启动应用程序(我想 android 中必须有某种内置设置才能确定这一点)?

最佳答案

如果启动您的 Activity 的服务是您的服务,您可以在用于从服务启动 Activity 的 Intent 中放置一些自定义信息(例如使用 Intent#putExtra)。
在 Activity 中,您可以使用 Activity#getIntent(),它返回启动此 Activity 的 Intent 。
如果您从 Service 启动 Activity,则该 Intent 将是您在 Service#startActivity 中传递的那个 Intent,并且将具有您的自定义信息。否则,启动您的 Activity 的不是您的服务。

这可能看起来有点像,例如:

//in Activity
public static final String EXTRA_STARTED_FROM_MY_SERVICE = "com.example.extra_started_from_sevice";

private boolean wasActivityStartedFromService() {
Intent startingIntent = getIntent();
//assuming you will use Intent#putExtra in your service when starting activity
return startingIntent.getBooleanExtra(EXTRA_STARTED_FROM_MY_SERVICE, false);
}

//...

//in Service

//...
Intent startingIntent = new Intent(this, MainActivity.class);
startingIntent.putExtra(MainActivity.EXTRA_STARTED_FROM_MY_SERVICE, true);
startActivity(startingIntent);

关于android - 检测用户是否启动应用程序,android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32493547/

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