新手,请见谅。
如果我想传一段文本给快捷方式,并在下次启动此快捷方式时读取出来,代码是怎样的?
具体来说,程序运行起来想实现类似效果:
1、在程序中设定一个值:“张三是胖子”,或者“李四是胖子”
2、将将此程序生成为一个含有参数的快捷方式,参数为“张三是胖子”,或者“李四是胖子”
3、点生成的快捷方式运行程序,自动读取快捷方式内含的参数,显示出“张三是胖子”或“李四是胖子”
参考了一些代码,也查了Intent和Bundle等,还是不能解决问题,不知哪里错了。搞了很久没搞定,向大家求助。
下面这段代码尝试改过了,但没有成功,所以请给出一个详细的代码,实现上面三点功能,谢谢大家
查了一些资料,没能解决问题。比如下面这段代码尝试改过了:
/**
* 为程序创建桌面快捷方式
* 带参数
*/
private void addShortcut(){
Intent shortcut = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
//快捷方式的名称
shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.app_name));
shortcut.putExtra("duplicate", false); //不允许重复创建
//指定当前的Activity为快捷方式启动的对象: 如 com.everest.video.VideoPlayer
//注意: ComponentName的第二个参数必须加上点号(.),否则快捷方式无法启动相应程序
ComponentName comp = new ComponentName(this.getPackageName(), "."+this.getLocalClassName());
shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, new Intent(Intent.ACTION_MAIN).setComponent(comp));
//快捷方式的图标
ShortcutIconResource iconRes = Intent.ShortcutIconResource.fromContext(this, R.drawable.ic_launcher);
shortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, iconRes);
//添加要做的事情
Intent todo = new Intent(Intent.ACTION_CALL,Uri.parse("tel:10000"));
shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, todo);
sendBroadcast(shortcut);
}