Android 小部件单击返回最后一个活动
当我点击我的应用程序小部件,而不是回到我打开的最后一个活动(进入主屏幕时),Android会从头开始重新启动我的应用程序 有没有办法让点击的行为完全像我的应用程序图标,或者像“最近的应用程序管理器” 下面是我如何实现小部件的:Android 小部件单击返回最后一个活动,android,android-widget,Android,Android Widget,当我点击我的应用程序小部件,而不是回到我打开的最后一个活动(进入主屏幕时),Android会从头开始重新启动我的应用程序 有没有办法让点击的行为完全像我的应用程序图标,或者像“最近的应用程序管理器” 下面是我如何实现小部件的: public class WidgetLauncher extends AppWidgetProvider { @Override public void onUpdate(Context context, AppWidgetManager appWidgetMa
public class WidgetLauncher extends AppWidgetProvider {
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
final int N = appWidgetIds.length;
for (int i=0; i<N; i++) {
int appWidgetId = appWidgetIds[i];
Intent active = new Intent(context, COPD_Main.class);
active.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, active, 0);
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.launch_support);
views.setOnClickPendingIntent(R.id.launch_support_launcher, pendingIntent);
appWidgetManager.updateAppWidget(appWidgetId, views);
}
}
}
公共类WidgetLauncher扩展了AppWidgetProvider{
@凌驾
公共void onUpdate(上下文上下文,AppWidgetManager AppWidgetManager,int[]AppWidgetId){
final int N=appWidgetIds.length;
对于(int i=0;i我认为问题在于您正在使用的意图标志。请尝试使用:
active.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
新任务的isntead
从:
如果已设置,则如果活动已在运行,则不会启动该活动
历史堆栈的顶部
我认为问题在于您正在使用的意图标志。请尝试使用:
active.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
新任务的isntead
从:
如果已设置,则如果活动已在运行,则不会启动该活动
历史堆栈的顶部
谢谢@verybadalloc,解决了问题。谢谢@verybadalloc,解决了问题。