Android Launcher Shortcuts
        Posted  
        
            by Tim
        on Stack Overflow
        
        See other posts from Stack Overflow
        
            or by Tim
        
        
        
        Published on 2010-05-25T21:47:08Z
        Indexed on 
            2010/05/25
            21:51 UTC
        
        
        Read the original article
        Hit count: 585
        
I have made a simple punch in / punch out time clock application. I want to add the user the option of making a shortcut on the homescreen that will toggle the state of the app(time out / time in) but I don't want this shortcut to open up the app on the screen at all.
here is my setupShortcut()
private void setupShortcut() {
    Intent shortcutIntent = new Intent(this, Toggle.class);
   // shortcutIntent.setClassName(this, Toggle.class.getName());  
    shortcutIntent.putExtra(EXTRA_KEY, "ToggleShortcut");  
    shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);  
    Intent intent = new Intent();
    intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent); 
    intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "ToggleShortcut");
    Parcelable iconResource = Intent.ShortcutIconResource.fromContext(this,  R.drawable.app_sample_code);
    intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, iconResource);
    setResult(RESULT_OK, intent);
}
Toggle.class is an activity that toggles the state for me. In the manifest I have these settings on it
<activity android:name=".Toggle" android:exported="true" android:theme="@android:style/Theme.Translucent.NoTitleBar">
As it is now I can create a shortcut on the home screen then press it. The first time I press it it starts the Toggle activity and completes it fine, but it also opens up the TimeClock activity on the screen. If I then hit the back button I go back to the home. I can now press this shortcut and it will start the Toggle activity and not change the screen. Before I added: shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); It would open up the TimeClock activity every time. Now it is just the first time. But I want it to never show anything on the screen when the Toggle shortcut is pressed. Does anyone have any idea of how to get rid of that?
© Stack Overflow or respective owner