我正在为一些营销公司制作应用,.Aim是在某个时候向用户展示他们的产品(使用时将选择一个小时,应用程序将在一小时后显示公司的最新产品) .I与报警经理进行了服务和调度,并调用了报警经理的活动,.Activity将获得产品信息和关闭按钮。
我所面临的问题
==>警报管理器触发服务在一些随机时间,==>活动显示很好,但在关闭按钮(我在这里调用finish() )。活动保持在活动堆栈中(应该删除)
流形
<service
android:name=".HelperService"
android:label="Product Service"
android:enabled="true">
</service>
<activity android:label="Product" android:name=".BDriverActivity">
<intent-filter>
<action android:name="android.intent.action.ACTIVE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>HelperService
Intent i = new Intent();
i.putExtra("s", 1);
i.setClass(this, BDriverActivity.class);
i.setFlags(DriveFile.MODE_READ_ONLY);
startActivity(i);
stopSelf();BDriverActivity
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(1);
getWindow().setFlags(AccessibilityNodeInfoCompat.ACTION_NEXT_HTML_ELEMENT, AccessibilityNodeInfoCompat.ACTION_NEXT_HTML_ELEMENT);
SHOWPRODUCT();
// on click of close call FINISH()
}Alaram经理
int mint=Global.mints;
Calendar cal = Calendar.getInstance();
cal.add(Calendar.SECOND, 10);
Intent intent = new Intent(activity, HelperService.class);
PendingIntent pintent = PendingIntent.getService(activity, 0, intent, 0);
AlarmManager alarm = (AlarmManager) activity.getSystemService(Context.ALARM_SERVICE);
int i;
i=60*mint;
alarm.setRepeating(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(),
i* 1000, pintent);
}发布于 2017-10-03 10:12:20
您需要在清单中添加下面的代码行
<activity android:label="Product" android:name=".BDriverActivity" android:noHistory="true">希望这对你有帮助
发布于 2017-10-03 10:13:08
尝试添加FLAG_ACTIVITY_NEW_TASK,如FLAG_ACTIVITY_CLEAR_TOP文档中所述:
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK); 发布于 2017-10-03 10:15:01
设置意图标志,以便像这样清除任务
Intent i = new Intent();
i.putExtra("s", 1);
i.setClass(this, BDriverActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK)
i.setFlags(DriveFile.MODE_READ_ONLY);
startActivity(i);https://stackoverflow.com/questions/46542000
复制相似问题