2013-10-08 2 views
1

Я создал приложение для Android, который прекрасно работает , но теперь я хочу, чтобы добавить функцию, которая при установке приложение должно создать ярлык на главном экранекак создать приложение ярлык на главном экране на Android телефонов по установке

пожалуйста, предложите я не хочу, полный код работает простых шагов будет достаточно

+0

http://codinggeekorg.wordpress.com/2011/01/02/android-how- to-add-home-screen-shortcuts-to-your-app/# –

ответ

3

Первый заявляют, что ваше приложение использует разрешение INSTALL_SHORTCUT в AndroidManifest.xml.

<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" /> 



    Intent shortcutIntent = new Intent(); 
    shortcutIntent.setClassName("com.example.androidapp", "SampleIntent"); 
    shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
    shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
    shortcutIntent.putExtra("someParameter", "HelloWorld"); 

    Intent addIntent = new Intent(); 
    addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent); 
    addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "Shortcut Name"); 
    addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(context, R.drawable.icon)); 

    addIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT"); 
    context.sendBroadcast(addIntent); 
+0

эта часть трески идет в активности запуска? –

2

в манифесте ..

<activity android:name=".ShortCutActivity" android:label="@string/shortcut_label"> 
    <intent-filter> 
    <action android:name="android.intent.action.CREATE_SHORTCUT" /> 
    <category android:name="android.intent.category.DEFAULT" /> 
    </intent-filter> 
</activity> 

Затем в деятельности, которая получает намерение, вы создаете намерение для быстрого доступа и вернуть его в качестве результата деятельности.

// create shortcut if requested 
ShortcutIconResource icon = 
    Intent.ShortcutIconResource.fromContext(this, R.drawable.icon); 

Intent intent = new Intent(); 

Intent launchIntent = new Intent(this,ActivityToLaunch.class); 

intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, launchIntent); 
intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, someNickname()); 
intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, icon); 

setResult(RESULT_OK, intent); 
+0

Зачем нам нужен код Java? Никто не объясняет! – Zingam

1

Испытано Попробуйте:

Intent shortcutIntent = new Intent(Intent.ACTION_MAIN); shortcutIntent.setClassName(this, this.getClass().getName()); 

Intent intent = new Intent(); 
intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent); 
intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "hello"); 
Parcelable iconResource = Intent.ShortcutIconResource.fromContext(this, R.drawable.icon); 
intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, iconResource); 

intent.setAction(Intent.ACTION_CREATE_SHORTCUT); 
getApplicationContext().sendBroadcast(intent); 

Good Luck ...

Смежные вопросы