2017-03-19 118 views
0

我正在尋找一種方法來創建快捷方式其他應用程序。 就像啓動可以查詢允許創建快捷方式的應用程序,並創建它們將它們保存在他們的程序中。如何從其他Android應用程序創建快捷方式

我的API版本介於M(21)到N7.1(25)之間。

即使只是一個鏈接或API的名稱,它很好。我根本找不到它。所有我發現的是關於新的快捷方式在android n。

thx爲你的時間。

回答

0

我找到了解決問題的方法。因爲我沒有看到這方面的很多信息。我希望我的分享可以幫助那些也在尋找答案的人。

所以會有3個步驟:

  1. 獲得可以創建快捷方式的應用程序
  2. 發送Intent到要從
  3. Activity.onActivityResult
獲取快捷的數據創建快捷方式的應用

1. 因爲我只是需要從某些應用程序創建快捷方式。我跳過第一步。但我想用queryIntentActivities(...)PackageManager中的一些其他功能可以得到你的名單。

Intent intent = new Intent("android.intent.action.CREATE_SHORTCUT"); 
PackageManager.queryIntentActitvies(intent,0); 

2.發送意圖應用程序創建一個快捷方式。

Intent intent = new Intent("android.intent.action.CREATE_SHORTCUT"); 
intent.setComponent(...); 
startActivityForResult(intent, requestCode); 

3.獲取快捷的數據:意圖

  1. 快捷

Intent shortcutIntent = activityResultIntent.getParcelableExtra(Intent.EXTRA_SHORTCUT_INTENT);

  • 快捷名稱
  • String shortcutName = intent.getStringExtra(Intent.EXTRA_SHORTCUT_NAME);

  • 快捷圖標
  • Bitmap shortcutIcon = intent.getParcelableExtra(Intent.EXTRA_SHORTCUT_ICON);

    相關問題