android 生成快捷方式(包括源码)

当你需要为应用程序创建快捷方式时,首先想到的是在代码中实现,其实很简单的一个方法:就可以实现:进入正常吧:
第一:咱们创建一个方法:

/** 创建快捷方式 * */
public void createDeskShortCut() {
//创建快捷方式的Intent
Intent shortcutIntent = new Intent( "com.android.launcher.action.INSTALL_SHORTCUT");
//不允许重复创建 ,如果重复的话就会有多个快捷方式了
shortcutIntent.putExtra("duplicate",false);
//这个就是应用程序图标下面的名称
shortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.app_name));
//快捷图片
Parcelable icon = Intent.ShortcutIconResource.fromContext( getApplicationContext(),R.drawable.icon);
shortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,icon);
Intent intent = new Intent(getApplicationContext(), MainActivity.class); //这个MainActivity是调用此方法的Activity
//下面两个属性是为了当应用程序卸载时桌面上的快捷方式会删除
intent.setAction("android.intent.action.MAIN");
intent.addCategory("android.intent.category.LAUNCHER");
//点击快捷图片,运行的程序主入口
shortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT,intent);
//最后一步就是发送广播
sendBroadcast(shortcutIntent);
}


第一步完成了,接下来就是第二步:


第二步:就是在清单文件中添加一个创建快捷方式的权限,此权限必不可少

<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>


第三步:就是在Activity中去实现这个方法:
 SharedPreferences preferences = getSharedPreferences("isfrist_file",this.MODE_PRIVATE);  
boolean isFirst = preferences.getBoolean("isfrist", true);
//这一步的作用是什么呢,就是第一次运行程序时就创建桌面快捷方式,以后就不创建了
if(isFirst) {
createDeskShortCut();
}
SharedPreferences.Editor editor = preferences.edit();
editor.putBoolean("isfrist",false);
editor.commit();
//相信大家都明白吧!比较的简单

源码:
public class MainActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
SharedPreferences preferences = getSharedPreferences("isfrist_file",
this.MODE_PRIVATE);
boolean isFirst = preferences.getBoolean("isfrist", true);
if(isFirst) {
createDeskShortCut();
Toast.makeText(this, "111111111",3000).show();
}
SharedPreferences.Editor editor = preferences.edit();
editor.putBoolean("isfrist",false);
editor.commit();
setContentView(R.layout.main); //设置布局文件
}

转自:http://www.xici.net/d177690690.htm
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值