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(安卓)权限全集
  2. Android(安卓)之 Gallery
  3. Android为HttpClient设置证书(用户名和密码)
  4. TextInputLayout,让输入框更有灵性
  5. Android(安卓)常用的SDCARD和内存操作
  6. Android(安卓)之 ProgressDialog用法介绍
  7. Android(安卓)封装http请求的工具类
  8. Android(安卓)删除SD卡文件和文件及创建文件夹和文件
  9. Android(安卓)SQLite使用

随机推荐

  1. Android解析ClassLoader(一)Java中的ClassL
  2. Android中的文件的读取方法
  3. 解决在Android(安卓)Studio 3.2找不到And
  4. Charles Android(安卓)抓包失败SSLHandsh
  5. android 中管理短信
  6. Android的焦点(Focus)问题
  7. NCalc支持Android和iOS
  8. Android系统层次结构及分析
  9. android中AudioRecord采集音频的参数说明
  10. Android切换Activity时的淡入动画和缩小