I had the same problem, I decided to use a very strange but simple solution.
1- create a new action and name it LauncherActivity (set the icon and label of this action that you want to display as the application icon / label)
2- set this action as the main and starting application of your application. (remove the <intent-filter> from your HomeScreen activity)
3- set the theme of this action android:theme="@android:style/Theme.Translucent"
4- now do nothing in your LauncherActivity onCreate() , just start the HomeScreen action using the intent and complete this action.
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Intent intent = new Intent(this, HomeScreen.class); startActivity(intent); finish(); }
finish () is required, so when you click the back button in HomeScreen, the application closes.
your icon and shortcut for your application will now be different from the HomeScreen icon and label
your manifest should look like this:
<application android:allowBackup="true" android:theme="@android:style/Theme.Holo.Light" > <activity android:name="com.iws.unify.HomeScreen" android:label="@string/nullstring" android:icon="@drawable/ic_launcher" > </activity> <activity android:name="com.iws.unify.LauncherActivity" android:icon="@drawable/ic_launcher_screen" android:label="@string/app_name" android:theme="@android:style/Theme.Translucent" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>
source share