Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 初級開發 >> 在Android應用程序中添加快捷圖標

在Android應用程序中添加快捷圖標

編輯:初級開發

如何實現添加快捷圖標?

  Launcher為了讓其他應用程序能夠定制自己的快捷圖標,就注冊了一個BroadcastReceiver專門接收其他應用程序發來的快捷圖標定制信息。所以只需要根據該BroadcastReceiver構造出相對應的Intent並裝入我們的定制信息,最後調用sendBroadcast方法就可以創建一個快捷圖標了。那麼,要構造怎樣一個Intent才會被Launcher的BroadcastReceiver接收呢?我們還是先來看看這個BroadcastReceiver的注冊信息吧。

  下面是Launcher的androidManifest.XML文件中Install-ShortcutReceiver的注冊信息。

  < !? Intent received used to install shortcuts from other applications ? >

  < p><receiver
android:name=”.InstallShortcutReceiver”
android:permission= “com.android.launcher.permission.INSTALL_SHORTCUT”>

  < intent-filter >

  < action android:name=”com.android.launcher.action.INSTALL_SHORTCUT” / >

  < /intent-filter >

  < /receiver >

  如何向這個 BroadcastReceiver 發送廣播,設置如下:

  首先應用程序必須要有com.android.launcher.permission.INSTALL_SHORTCUT權限;

  然後廣播出去的Intent的action設置com.android.launcher.action.INSTALL_SHORTCUT;

  這樣廣播就可以發送給Launcher的InstallShortcutReceiver了;

  而快捷圖標的信息則是以附加信息的形式存儲在廣播出去的Intent對象中的,包括有圖標、顯示的名稱以及用來啟動目標組件的Intent這三種信息。我們可以通過putExtra的重載方法,通過指定相應的鍵值,將這些信息放到附加信息的Bundle對象中。

  列出了各種快捷圖標信息相對應的鍵值和數據類型:

  下面舉些具體的例子,如下:

  private final String ACTION_ADD_SHORTCUT =

  “com.android.launcher.action.INSTALL_SHORTCUT”;

  Intent addShortcut =new Intent(ACTION_ADD_SHORTCUT);

  String numToDial = null;

  Parcelable icon = null;

numToDial = “110″;

  icon = Intent.ShortcutIconResource.fromContext(this,R.drawable.jing);

  //numToDial = “119″;

  //icon = Intent.ShortcutIconResource.fromContext(this,R.drawable.huo);

  //圖標

  addShortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,icon);

  //名稱

  addShortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME,numToDial);

  //啟動目標組件的Intent

  Intent directCall;

  directCall.setData(Uri.parse(”tel://”+numToDial));

  addShortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT,directCall);

  sendBroadcast(addShortcut);

  上面的程序運行後的界面如下:

  總結說明

  只要知道這些信息後,你就可以輕而易舉的為應用程序添加快捷圖標。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved