我正在开发一个包含小部件的 Android 应用程序。
小部件的主要任务(用户点击后)是启动 Activity ( UpdateWidgetActivity
),它从服务器收集数据并更新小部件视图。
此活动不显示任何其他视图,因此用户(单击小部件后)仍应留在主屏幕上。
问题如下:
- 用户启动应用程序(通过单击图标)(例如 Activity A)
- 他按下主页按钮>
- 他点击小部件
- 小部件运行
UpdateWidgetActivity
,但活动 A 也重新启动并显示给用户(我不想要)
我的问题是
当用户点击 Widget 时,如何防止应用程序 Activity(Activity A)重新启动,以执行完全不同的 Activity?
我在这里看到了很多类似的主题,但是那里提出的解决方案在我的应用程序中不起作用。
下面是 Widget ProvideronUpdate()
方法的代码:
{
for (int appWidgetId : appWidgetIds) {
Intent intent = new Intent(context, WidgetUpdateActivity.class);
intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId);
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, Intent.FLAG_ACTIVITY_NEW_TASK);
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget_layout);
views.setOnClickPendingIntent(R.id.widget_view, pendingIntent);
appWidgetManager.updateAppWidget(appWidgetId, views);
}
}
}
我是新来的,实际上我只有 Android 的基本知识,对于任何错误或不准确之处,我深表歉意。