今天學習了一下快捷方式的建立和删除(ShortCut)我們可以通過兩種方式建立快捷方式
(一):使用一個Activity,然後在Home界面點選Menu->添加->選擇快捷方式->選擇建立的應用程式的快捷方式,看如下的效果:
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiYWan5id3IEO2MDN5kjNxMzMx8FMvwFNx8CXzAjMxAjMvw1ckF2bsBXdvwFdl5mLuR2cj5Set1yZtl2Lc9CX6MHc0RHaiojIsJye.gif)
建立步驟如下:
①:在Androidmanifset.xml檔案中注冊Activity
②:在IntentFiler标簽下面加入<action/>
public class ShortCutSample extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); if (getIntent().getAction().equals( "android.intent.action.CREATE_SHORTCUT")) { Intent _ReturnIntent = new Intent(); //設定快捷方式的名字 _ReturnIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "jiangqq ShortCut"); //設定快捷方式的圖示 _ReturnIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(this, R.drawable.ic_launcher)); Intent _Intent=new Intent(Intent.ACTION_CALL); _Intent.setData(Uri.parse("tel://10086")); //當快捷方式建立完成之後,點選圖示跳轉到撥打撥打電話的頁面 _ReturnIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, new Intent( this, LauncherActivity.class)); //設定傳回值,一般是OK, setResult(RESULT_OK, _ReturnIntent); finish(); } }
(二)使用發送廣播來進行建立快捷方式:該demo例子實作的功能是:在界面有一個按鈕,點選按鈕生成一個快捷方式,然後點選快捷方式進入撥打電話的頁面;
生成步驟如下:
1:如下權限: <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
2:在Activity中new一個Intent加入Action:
_Intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
3:其他核心代碼如下:
Intent _ReturnIntent = new Intent(); // 設定建立快捷方式的過濾器action _ReturnIntent .setAction("com.android.launcher.action.INSTALL_SHORTCUT"); // 設定生成的快捷方式的名字 _ReturnIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "Broad ShortCut"); // 設定生成的快捷方式的圖示 _ReturnIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext( LauncherActivity.this, R.drawable.ic_launcher)); Intent _Intent = new Intent(Intent.ACTION_CALL); _Intent.setData(Uri.parse("tel://5556")); _ReturnIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, _Intent); // 發送廣播生成快捷方式 sendBroadcast(_ReturnIntent); LauncherActivity.this.finish(); }
當然上面要加入撥打電話的權限:
<uses-permission android:name="android.permission.CALL_PHONE" />
如果我們想要解除安裝快捷方式,需要在布局檔案中加入權限
<uses-permission android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT"/>
然後intent中傳入 com.android.launcher.permission.UNINSTALL_SHORTCUT
其他的設定要删除的快捷方式的名字要相同,其他的代碼都差不多,同樣可以通過發送廣播來解除安裝快捷方式.....
上面是我一些對于ShortCut建立和解除安裝的小總結,有興趣可以和我一起交流學習,如果上面寫到有不當之處,希望能夠留言給我提出建議,謝謝