我有一个具有ConfigActivity的Widget。如果我第一次将我的Widget放在主屏幕上,一切都按预期工作:
Widget上有一个图标,允许用户返回配置。出现Bug,如果用户启动了应用程序,按下HomeButton,然后在WidgetConfigIcon上点击:
如果用户启动应用程序,并且单击BackButton而不是HomeButton,则不会显示。我希望ConfigIcon具有完全相同的行为,因为它位于主屏幕上的第一个位置。我发布了相关的实现
WidgetService:
Intent activityIntent = new Intent(this, WidgetConfig.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
//tried many Flags with no result
activityIntent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, mWidgetData.getWidgetId());
PendingIntent configPendingIntent = PendingIntent.getActivity(this, mWidgetData.getWidgetId(), activityIntent, PendingIntent.FLAG_UPDATE_CURRENT);
mRemoteViews.setOnClickPendingIntent(R.id.widget_controls, configPendingIntent);
ManifestEntry:
<activity
android:name="namespace.WidgetConfig"
android:theme="@android:style/Theme.Light.NoTitleBar">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_CONFIGURE"/>
</intent-filter>
</activity>
如果需要,我会发布任何其他代码。
在用户完成配置后,我该怎么做才能防止应用程序出现?
答案 0 :(得分:0)
我自己开始工作。我添加了IntentFlag Intent.FLAG_ACTIVITY_NEW_TASK
并在我的Android-Manifest中添加了一个自定义android:taskAffinity:"some.custom.widgetConfig.task.ns"
,它正在运行。