一次打开主要活动

时间:2011-08-15 22:00:13

标签: java android

对于我的新闻阅读器应用程序,我制作了一个小部件。使用小部件可以启动新闻应用程序。但是如果用户返回主屏幕,使用后退按钮,仍然有应用程序的实例。因此,如果用户访问应用程序列表(所有应用程序)并再次启动新闻应用程序。新闻应用程序有2个实例:S要关闭应用程序,用户需要在后退按钮上按2次(因为您看到相同应用程序的2倍)。我可以做些什么吗?

这是我的代码:

static void updateAppWidget(Context context, AppWidgetManager appWidgetManager,
        int appWidgetId) {


    Intent configIntent = new Intent(context, Main.class);
    PendingIntent configPendingIntent = PendingIntent.getActivity(context, 0, configIntent, 0);

    RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.widget);

    remoteViews.setOnClickPendingIntent(R.id.headlinesBox, configPendingIntent);

    // Tell the widget manager
    appWidgetManager.updateAppWidget(appWidgetId, remoteViews);

}

2 个答案:

答案 0 :(得分:0)

您可以在清单文件中的android:clearTaskOnLaunch活动属性上设置true。

它应该始终关闭所有额外的活动并从第一个活动启动应用程序。

答案 1 :(得分:0)

似乎你必须添加到清单:

    <activity android:name=".Main"
              android:launchMode="singleInstance">
        <intent-filter>
            <action android:name="android.intent.action.MAIN"/>
        </intent-filter>
    </activity>