如图:
1、打开微信,在联系人界面点击目标联系人:
2、点击联系人详细资料界面的右上角:
3、选择菜单最下方“添加到桌面”:
4、联系人就添加到桌面上了:
5、点击桌面上的联系人图标,就能直接进入聊天界面:
**我的问题如下:
问题1:为什么点击这个图标就能直接进入微信聊天界面?(我知道这是个ShortCut ,我更想知道的是这个ShortCut 的Intent传递了何种数据,使得能够直接打开了与微信上指定联系人的对话窗口)
问题2:如何写一段代码,来启动这个“联系人图标”?**
如图:
1、打开微信,在联系人界面点击目标联系人:
2、点击联系人详细资料界面的右上角:
3、选择菜单最下方“添加到桌面”:
4、联系人就添加到桌面上了:
5、点击桌面上的联系人图标,就能直接进入聊天界面:
**我的问题如下:
问题1:为什么点击这个图标就能直接进入微信聊天界面?(我知道这是个ShortCut ,我更想知道的是这个ShortCut 的Intent传递了何种数据,使得能够直接打开了与微信上指定联系人的对话窗口)
问题2:如何写一段代码,来启动这个“联系人图标”?**
4 回答1.7k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
2 回答2.7k 阅读
2 回答2k 阅读
2 回答1.8k 阅读
1 回答2.1k 阅读
1 回答957 阅读✓ 已解决
通过广播创建这个快捷图标的,它的官方名称叫:Short Cut。
完成添加图标需要以下几个步骤:
添加权限
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
执行以下代码
其中通过设置 Intent.EXTRA_SHORTCUT_INTENT 的值为一个 Intent,接下来的事情和使用 intent 跳转某个界面是一样的了,所以可以直接进入聊天界面。
需要跳转到对应的会话,则需要通过查询联系人的 ContentProvider 来获取联系人的 ID,然后通过Intent 跳转:
相同的方式一样可以进入联系人的朋友圈、进行视频聊天等动作。因为联系人的 contactId 是必要参数,所以一般是在通讯录相关的 App 上才会用到(我也是前司曾开发一个通讯录 App 了解到的)