为了账号安全,请及时绑定邮箱和手机立即绑定

Android在主屏幕上创建快捷方式

Android在主屏幕上创建快捷方式

跃然一笑 2019-08-03 15:03:38
Android在主屏幕上创建快捷方式我想做的是:1)我在一个活动中,有两个按钮。如果单击第一个快捷方式,将在主屏幕中创建快捷方式。快捷方式打开html之前下载的页面,所以我希望它使用默认浏览器,但我不想使用互联网,因为我已经有了该页。2)第二个按钮创建另一个启动活动的快捷方式。我想向活动传递一些额外的参数(例如字符串).这些事有可能吗?我发现了一些联系和类似的问题Android:有没有一种在主屏幕上创建网页快捷方式的编程方法?他们似乎是我的问题的答案,但有人告诉我,这个代码不会在所有的设备上工作,这是不可取的,我想要做的是不可能的.不推荐这种技术。这是一个内部实现,而不是AndroidSDK的一部分。它不会在所有主屏幕实现上工作。它可能并不适用于过去所有版本的Android。它在Android的未来版本中可能不起作用,因为谷歌没有义务维护内部无文档的界面。请不要用这个什么是内部实现?这代码可信还是不可信.请帮我.
查看完整描述

3 回答

?
翻过高山走不出你

TA贡献1875条经验 获得超3个赞

下面我开发了一种在Android主页上创建快捷图标的方法[在我自己的应用程序上测试]。就这么说吧。

private void ShortcutIcon(){

    Intent shortcutIntent = new Intent(getApplicationContext(), MainActivity.class);
    shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

    Intent addIntent = new Intent();
    addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
    addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "Test");
    addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(getApplicationContext(),
     R.drawable.ic_launcher));
    addIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
    getApplicationContext().sendBroadcast(addIntent);}

不要忘记更改您的活动名称、图标资源和权限。

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

编码愉快!

编辑:

对于重复问题,第一个选项是在代码中添加下面一行,否则每次都会创建新的行。

addIntent.putExtra("duplicate", false);

第二个选项是先卸载App快捷方式图标,然后在第一个选项不起作用的情况下再次安装它。




查看完整回答
反对 回复 2019-08-05
  • 3 回答
  • 0 关注
  • 304 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信