生成快捷方式的代码,请看: Intent shortcut = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME, "创建啦");
shortcut.putExtra("duplicate", false); // 不允许重复
ComponentName comp =new ComponentName(this.getPackageName(), "."+this.getLocalClassName());
shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT,
new Intent(Intent.ACTION_VIEW,Uri.parse("http://www.baidu.com")));
ShortcutIconResource iconRes
= Intent.ShortcutIconResource.fromContext(this,R.drawable.icon);// 设置快捷方式的图标
shortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, iconRes);
// 定义shortcut点击事件
sendBroadcast(shortcut);
以上代码能实现在桌面创建快捷方式打开之后是百度的网站,但问题是图标只能是自己设置的,有什么方法或者属性能从网上获取相应的图标吗?例如打开百度网站快捷方式的图标变成百度的。
求各路高手大侠指点一二,谢谢!
shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME, "创建啦");
shortcut.putExtra("duplicate", false); // 不允许重复
ComponentName comp =new ComponentName(this.getPackageName(), "."+this.getLocalClassName());
shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT,
new Intent(Intent.ACTION_VIEW,Uri.parse("http://www.baidu.com")));
ShortcutIconResource iconRes
= Intent.ShortcutIconResource.fromContext(this,R.drawable.icon);// 设置快捷方式的图标
shortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, iconRes);
// 定义shortcut点击事件
sendBroadcast(shortcut);
以上代码能实现在桌面创建快捷方式打开之后是百度的网站,但问题是图标只能是自己设置的,有什么方法或者属性能从网上获取相应的图标吗?例如打开百度网站快捷方式的图标变成百度的。
求各路高手大侠指点一二,谢谢!
有一个方法,就是去解析网页的xml,找到其中的logo图标,但是这个工作费时费力。
最佳的解决办法可以参照楼上的方案,但是这也是一个体力活...而且当访问的网站不在预先定义的站点内时就没有图标了。
这个也不失为一个方法,当访问的网站不在预先定义的站点内时,可以考虑采用默认的logo图标