Android之快捷方式

package com.shortcut;
import android.app.Activity;
import android.content.ContentResolver;
import android.content.Intent;
import android.content.Intent.ShortcutIconResource;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;

public class AddShortCutActivity extends Activity {
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
booleanflag=IfaddShortCut();//如果已经创建,则不需要在创建
if(flag==false){
addShortCut();
}

}


publicvoidaddShortCut(){
Intentshortcut
=newIntent("com.android.launcher.action.INSTALL_SHORTCUT");
//设置属性
shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME,getResources().getString(R.string.app_name));
ShortcutIconResourceiconRes
=Intent.ShortcutIconResource.fromContext(AddShortCutActivity.this,R.drawable.ic_launcher);
shortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON,iconRes);

//是否允许重复创建
shortcut.putExtra("duplicate",false);
Intentintent
=newIntent(Intent.ACTION_MAIN);
intent.setFlags(Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
intent.addFlags(Intent.FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
intent.setClass(AddShortCutActivity.
this,AddShortCutActivity.class);
//设置启动程序
System.out.println("createIcon");
shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT,intent);
AddShortCutActivity.
this.sendBroadcast(shortcut);
}


publicbooleanIfaddShortCut(){
booleanisInstallShortcut=false;
finalContentResolvercr=AddShortCutActivity.this.getContentResolver();
//本人的2.2系统是”com.android.launcher2.settings”,网上见其他的为"com.android.launcher.settings"
finalStringAUTHORITY="com.android.launcher2.settings";
finalUriCONTENT_URI=Uri.parse("content://"+AUTHORITY+"/favorites?notify=true");
Cursorc
=cr.query(CONTENT_URI,
newString[]{"title","iconResource"},"title=?",
newString[]{getString(R.string.app_name)},null);
if(c!=null&&c.getCount()>0){
isInstallShortcut
=true;
}

returnisInstallShortcut;
}

}

<? xmlversion="1.0"encoding="utf-8" ?>
< manifest xmlns:android ="http://schemas.android.com/apk/res/android"
package
="com.shortcut"
android:versionCode
="1"
android:versionName
="1.0" >

< uses-sdk android:minSdkVersion ="8" />

< application
android:icon ="@drawable/ic_launcher"
android:label
="@string/app_name" >
< activity
android:label ="@string/app_name"
android:name
=".AddShortCutActivity" >
< intent-filter >
< action android:name ="android.intent.action.MAIN" />
< category android:name ="android.intent.category.LAUNCHER" />
</ intent-filter >
< intent-filter >
< action android:name ="android.intent.action.CREATE_SHORTCUT" ></ action >
</ intent-filter >
</ activity >
</ application >
< uses-permission android:name ="com.android.launcher.permission.READ_SETTINGS" />
< uses-permission android:name ="com.android.launcher.permission.INSTALL_SHORTCUT" />
</ manifest >

Android Shortcut操作(一)
http://www.eoeandroid.com/thread-92125-1-1.html

Android Shortcut操作(二)
http://www.eoeandroid.com/thread-92128-1-1.html

更多相关文章

  1. android xml属性的单位大全
  2. Android 常用的SDCARD和内存操作
  3. android xml文件操作
  4. android 操作文件
  5. android manifest相关属性
  6. android开发之android:process属性_application中onCreate执行多
  7. Android轻量级JSON操作类
  8. Android之通信录中的联系人操作

随机推荐

  1. android watchdog原理
  2. android文件系统挂载分析
  3. Android Google Maps 开始
  4. 使用IC框架开发跨平台App的备忘录123
  5. Android项目构建
  6. Android NDK 安装与配置
  7. Android(安卓)View动画开发笔记
  8. Android Flexboxlayout使用详解
  9. 开启Android开发的旅程!
  10. android之Layout(二)