編輯:初級開發
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);
上面的程序運行後的界面如下:
總結說明
只要知道這些信息後,你就可以輕而易舉的為應用程序添加快捷圖標。
GridVIEw[功能]以前提及過GridView 說也是一種AdapterView 和ListVIEw有點像 今天花了時間 用了一些 有點心得 和大家分享分享[思路]
上課講義之 1: 高煥堂講解 Intent-based ProgrammingAndroid的4種嫡系組件(即Activity、Service、IntentReceiv
隨著Android設備的普及為了讓更多的人參與Android軟件開發,這裡Google官方提供了一個開發工具App Inventor可以讓用戶無需編寫代碼也能生成自己的
在經過長時間的等待之後我們在今天終於看見了看見了全新的Google Reader軟件,當然更為難能可貴的是這款軟件竟然是Google官方推出的,目前廣大的用戶已經可以在