0

当我创建一个新活动并使用

Intent i = new Intent (this, Act.class);
startActivity(i);

Android 创建了一个额外的快捷方式。我不想要捷径。我希望应用程序只有一个快捷方式。

4

3 回答 3

1

这是因为您在清单文件中使用 category=Launcher 注册您的活动..删除::

只有一项活动应注册到 Launcher 类别。

<activity android:name=".Test"
          android:label="@string/app_name">
     <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
     </intent-filter>
</activity>

其他活动应该像这样声明,没有额外的权限。

<activity android:name=".Dashboard"/>
于 2012-07-27T07:39:08.480 回答
0

在您的清单文件中,我认为您已经注册了其他活动:使用意图过滤器

 <action android:name="android.intent.action.MAIN" />

 <category android:name="android.intent.category.LAUNCHER" />

只有主要活动应该有上述过滤器

例如

//Main Activity
<activity
        android:name=".SplashCalendar"
        android:label="@string/app_name"
        android:screenOrientation="portrait" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
// Your Other acitivties
    <activity
        android:name=".CheeckerWebView"

        android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
    </activity>
于 2012-07-27T07:38:44.470 回答
0

这是在您的清单中完成的。只有活动与

    <intent-filter>
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>

将显示在启动器中。只需将这些用于您不想显示的活动即可。

于 2012-07-27T07:36:30.433 回答