在不启动应用程序的情况下启动闹钟 activity
Launch alarm activity without launching app
我的应用程序中有一个闹钟,但我有一个问题 - 我的闹钟就像一个对话框 - 它不会占据整个屏幕。我的问题是我的闹钟 activity 也打开了我的应用程序,显示用户在我的应用程序中的最后位置。
activity 从服务调用:
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
if (intent != null) {
Intent alarmIntent = new Intent(getBaseContext(), AlarmScreen.class);
alarmIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
alarmIntent.putExtras(intent);
getApplication().startActivity(alarmIntent);
AlarmManagerHelper.setAlarms(this);
}
return super.onStartCommand(intent, flags, startId);
}
我不希望我的应用在打开闹钟 activity 时打开,我希望它只打开闹钟 activity。我该怎么做?
谢谢!
编辑:
我什至尝试使用过滤器意图并使 AlarmActivity 像主要 activity(启动器)一样,但它没有用。
这是我在清单中设置 AlarmActivity 和 AlarmService 的方式:
<activity
android:name="com.ezlist.tasks.AlarmScreen"
android:label=""
android:screenOrientation="portrait"
android:theme="@style/Theme.Transparent" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<service
android:name="com.fgdvir.ezlist.AlarmService"
android:enabled="true" />
将闹钟 activity 的 android:taskAffinity 设置为应用的唯一值。
例如
android:taskAffinity="uk.co.packagename.alarmactivity"
然后它将在自己的任务中打开,并且不会与您的应用程序的其余部分相关联。即它不会在打开时将您的应用程序的其余部分拉到前台。
我的应用程序中有一个闹钟,但我有一个问题 - 我的闹钟就像一个对话框 - 它不会占据整个屏幕。我的问题是我的闹钟 activity 也打开了我的应用程序,显示用户在我的应用程序中的最后位置。
activity 从服务调用:
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
if (intent != null) {
Intent alarmIntent = new Intent(getBaseContext(), AlarmScreen.class);
alarmIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
alarmIntent.putExtras(intent);
getApplication().startActivity(alarmIntent);
AlarmManagerHelper.setAlarms(this);
}
return super.onStartCommand(intent, flags, startId);
}
我不希望我的应用在打开闹钟 activity 时打开,我希望它只打开闹钟 activity。我该怎么做?
谢谢! 编辑: 我什至尝试使用过滤器意图并使 AlarmActivity 像主要 activity(启动器)一样,但它没有用。
这是我在清单中设置 AlarmActivity 和 AlarmService 的方式:
<activity
android:name="com.ezlist.tasks.AlarmScreen"
android:label=""
android:screenOrientation="portrait"
android:theme="@style/Theme.Transparent" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<service
android:name="com.fgdvir.ezlist.AlarmService"
android:enabled="true" />
将闹钟 activity 的 android:taskAffinity 设置为应用的唯一值。
例如
android:taskAffinity="uk.co.packagename.alarmactivity"
然后它将在自己的任务中打开,并且不会与您的应用程序的其余部分相关联。即它不会在打开时将您的应用程序的其余部分拉到前台。