0
A
回答
1
我不知道有什麼辦法可以讓它出現在應用程序抽屜中,但稍後再刪除它。
要在主屏幕上創建快捷方式,可以使用以下方法。
請注意 -我相信這裏播出的意圖以及您在清單中必須申請的權限不是公共API的一部分。此方法不適用於每個主屏幕實現。此方法可能會隨時停止工作(並且可能無法在較新版本的Android上工作,我只在Nexus S上進行測試,但似乎在該設備上工作)。
你已經被警告
public boolean setShortCut(Context context, String appName)
{
System.out.println("in the shortcutapp on create method ");
boolean flag =false ;
int app_id=-1;
PackageManager p = context.getPackageManager();
Intent i = new Intent(Intent.ACTION_MAIN);
i.addCategory(Intent.CATEGORY_LAUNCHER);
List<ResolveInfo> res =p.queryIntentActivities(i,0);
System.out.println("the res size is: "+res.size());
for(int k=0;k<res.size();k++)
{
System.out.println("the application name is: "+res.get(k).activityInfo.loadLabel(p));
if(res.get(k).activityInfo.loadLabel(p).toString().equals(appName)){
flag = true;
app_id = k;
break;
}
}
if(flag){
ActivityInfo ai = res.get(app_id).activityInfo;
Intent shortcutIntent = new Intent();
shortcutIntent.setClassName(ai.packageName, ai.name);
shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
Intent intent = new Intent();
intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "SIZETESTDYNAMIC");
intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(context, R.drawable.icon));
//intent.addCategory(Intent.CATEGORY_DEFAULT);
intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
context.sendBroadcast(intent);
System.out.println("in the shortcutapp on create method completed");
}
else
System.out.println("appllicaton not found");
return true;
}
,你就會有這個權限添加到您的清單:
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
相關問題
- 1. 菜單快捷方式
- 2. 菜單項快捷方式
- 3. UnauthorizedAccessException刪除Windows移動快捷方式
- 4. Qt - 刪除快捷方式 - 模糊的快捷方式超載
- 5. Android刪除HomeScreen中的快捷方式
- 6. 如何使用快捷方式自動打開菜單?
- 7. eclipse快捷方式刪除警告
- 8. 刪除標記塊快捷方式
- 9. 刪除快捷方式Android 4.0+
- 10. 搜索並刪除快捷方式
- 11. Android刪除桌面快捷方式
- 12. VB.NET Winforms菜單項快捷方式覆蓋默認快捷方式?
- 13. 從名單中刪除快捷方式嵌套列表
- 14. 爲什麼卸載後未刪除「開始」菜單快捷方式?
- 15. 在IntelliJ中「新分支」彈出式菜單的快捷方式
- 16. 自動導入fxml快捷方式
- 17. Excel自動填充快捷方式
- 18. monodevelop快捷方式和自動代碼
- 19. Netbeans中的上下文菜單快捷方式
- 20. Windows窗體中的菜單快捷方式和MDI
- 21. 自定義菜單快捷鍵
- 22. Flash自定義右鍵快捷菜單
- 23. 自定義快捷菜單4.0
- 24. 動畫UIImage快捷方式?
- 25. 移動html快捷方式
- 26. 在Dreamweaver中刪除一行的快捷方式?
- 27. 如何在程序中刪除破碎的快捷方式
- 28. 刪除$ windir中文件夾的快捷方式
- 29. C#防止從菜單上觸發快捷方式刪除自定義小部件上的鍵
- 30. 下拉按鈕式快捷菜單
在什麼菜單?你可以說得更詳細點嗎? – Calvin 2012-03-15 14:10:48
@Calvin在應用程序抽屜裏 – opc0de 2012-03-15 14:17:14
Launcher是正確的術語。 :)如果是這樣的話,我不知道,因爲每個安裝的應用程序應該出現在那裏。但作爲替代方案,您可以實現IF(配置文件未找到),然後顯示設置頁面Else顯示您的主要活動。 – Calvin 2012-03-15 14:26:31