Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android-Launcher開發之ShortCut(1)

Android-Launcher開發之ShortCut(1)

編輯:關於Android編程

以下源碼來自Launcher2.3的例子

1.默認每個應用的主Activity都會自帶 ,表示該應用安裝到Launcher時點擊打開該Activity

 

2.Launcher2源碼的時序圖如下:(在圖中,我們可以看到 創建shortcut需要准備2方面東西,一個action.,另一個是我們檢索後返回的intent)

\


2.1.當想在桌面手動創建shortcut,就必須在AndroidManifest.xml文件中添加一個標簽.

如下.我們創建一個ShortCutActivity用來處理shortcut的創建

 

 

2.2並在Activity中處理顯示的shortCut樣式的返回Intent

 

/**
 * 	@author Lean  @date:2014-8-25  
 */
public class ShortCutActivity extends Activity{
	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		if (getIntent().getAction().equals(Intent.ACTION_CREATE_SHORTCUT)) {
			Intent returnIntent=new Intent();
			returnIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,Intent.ShortcutIconResource.fromContext(this,R.drawable.ic_launcher));
			returnIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME,A simple shortCut);
			returnIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT,new Intent(this,MainActivity.class));
			setResult(RESULT_OK,returnIntent);
			finish();
		}
	}
	
}

 

3.以上的shortcut只能手動添加,如果想動態添加shortCut 就必須發送廣播.Android Launcher2源碼提供了如下

 

這也表示,我們發送廣播必須聲明權限,還有指定,於是 在我們的應用程序AndroidManifest.xml裡 添加

 

 

同時在代碼調用(同時,動態添加shortcut也必須指定其樣式和操作意圖)

 

				Intent intent=new Intent();
				intent.setAction(com.android.launcher.action.INSTALL_SHORTCUT);
				intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,R.drawable.ic_launcher);
				intent.putExtra(Intent.EXTRA_SHORTCUT_NAME,a auto sample);
				intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT,new Intent(MainActivity.this,MainActivity.class));
				sendBroadcast(intent);


 

 

 

 

 

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