我现在有一个相当复杂的应用程序,我想要包含一个应用程序小部件.到目前为止工作正常,一切都是使用内容提供商,服务和配置实用程序设置的.
现在......我希望能够在第一次初始配置后再次重新配置我的小部件.所以我的猜测只是使用PendingIntent和.getActivity()再次启动我的配置活动.到目前为止工作正常!
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget_news_layout);
Intent config_intent = new Intent(context.getApplicationContext(), NewsWidgetConfigure.class);
config_intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, mappWidgetId);
config_intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
PendingIntent conf_penIntent = PendingIntent.getActivity(context, mappWidgetId, config_intent,
PendingIntent.FLAG_UPDATE_CURRENT);
views.setOnClickPendingIntent(R.id.settings_button, conf_penIntent);
Run Code Online (Sandbox Code Playgroud)
现在......问题是,我的配置活动重新启动会带回整个应用程序,这意味着在"返回"之后 - 按下,以及在我的Configuration.finish()之后,用户返回到应用程序,而不是主屏幕.
我确信这个问题与launchModes或Intent Flags有关......但我现在无法掌握它并且它让我烦恼了好几个小时.
在此先感谢您的帮助.