调用微信聊天功能和分享功能

今天整理个不是问题的问题,没学到啥,主要完成功能

老大要求能调用手机号码然后通过微信聊,

我去,说白了老大看到了应用-通讯录plus-的微信功能,要我模仿。

首先,坑啊,我以为是开放的功能,就去看了半天微信的开发分享功能,记录下分享功能的使用:

1.去下载微信开放平台的包: 微信提供了 开发的工具包sdk ,里面有个 libammsdk.jar.将它导入工程

2.去微信开放平台申请你的 APP_ID ,做过其他开放平台的都应该知道这玩意。

3.在工程建立静态变量APP_ID:

public static final String APP_ID = "wx----------------";

4.主要使用IWXAPI 接口,它提供了注册应用,交互的基本功能方法:

IWXAPI api = WXAPIFactory.createWXAPI(context, APP_ID);//获取iWXAPI的实现,需要你自己的 APP_ID
		api.registerApp(APP_ID);//注册自己的应用id

5.进行简单文本信息的分享传送:

		WXTextObject textobj = new WXTextObject(" ");//必须有长度,为0不可以,代表分享的文本
		WXMediaMessage message = new WXMediaMessage();//传送 request里面的对象,用来包装 真实的数据
		message.description = textmsg;
		message.title = textmsg;
		message.mediaObject = textobj;//赋值为刚才的文本对象
		SendMessageToWX.Req request = new SendMessageToWX.Req();//分享给wx的类
		request.transaction = textmsg;//代表一次会话的唯一id
		request.scene = SendMessageToWX.Req.WXSceneSession;//代表场景, sdk文档有写 timeline 是朋友圈, session是会话
		request.message = message;
		boolean flag = api.sendReq(request);
		System.out.println("do send... weixin to "+textmsg+" : "+flag);

这样就完成了分享,微信提供的sdk使用demo已经非常详细了

其次是调用微信

我使用了下通讯录plus,它一定要在android账户中添加微信账户以及微信账户必须设置手机绑定为当前手机,

所以是不是联系人数据库中的account_name 和 account_type表明了谁是本机微信好友

所以

1.在添加微信账户后查询account_name,发现有了新的account_name:xxxx(你的微信登入名字)

而account_type = com.tencent.mm.account

2.查询这个account_type所属的号码,这些号码果然是我的微信好友

3.怎么调用,观察通讯录plus的调用intent 我们就知道答案了,包括了数据(由contact.data+dataid)和类型就是下面的type=“vnd.android.cursor.item/vnd.com.tencent.mm.chatting.profile”后面的字符:

4.我们只要模仿这个intent就可以了调用代码:

Intent intent = new Intent(Intent.ACTION_VIEW);
		SimplePhone sp = (SimplePhone) mAdpater.getItem(position);
		intent.setDataAndType(Uri.withAppendedPath(ContactsContract.Data.CONTENT_URI, String.valueOf(sp.dataid)), WX_MIMETYPE);
		startActivity(intent);

这样就完成了到达微信界面,和指定的号码聊天

最后。这个功能是山寨不是开放的,完全不靠谱,如果type类型变化或者微信关了这个那就完蛋了

时间: 2024-11-07 16:57:47

调用微信聊天功能和分享功能的相关文章

调用安卓手机系统的分享功能

今天才发现原来可以直接调用系统自带的分享功能,之前都是集成友盟的,真是孤陋寡闻了啊! 不过调用系统的分享功能,支持的分享数目就看系统集成多少了,比如我的oppo的支持微信  QQ   新浪等! 关键代码: // 启动分享发送的属性 Intent intent = new Intent(Intent.ACTION_SEND); intent.setType("text/plain"); // 分享发送的数据类型 String msg = "推荐给大家"; // 分享的

调用新浪微博接口,实现“分享”功能——代码实现

<!doctype html> <html> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <div> <p>点击下面的按钮可以将这段文字和图片分享到新浪微博哦!@独行冰海</p> <img src='http://t.cn/zRxMzZE' title='独

怎么在浏览器里面调用微信聊天?

公司给了一个任务,再我们的多用户商城里面给每个用户五个名额,可以绑定用户的微信作为客服,可是我找了好久也没有找到可以再网页里面调用微信聊天的方法,那位尝试过?给个方案,如果不行我就回复说做不了了. 怎么在浏览器里面调用微信聊天? >> php 这个答案描述的挺清楚的:http://www.goodpm.net/postreply/php/1010000007302192/怎么在浏览器里面调用微信聊天.html

Unity调用Android的API实现分享功能&lt;转&gt;

问题:如何在unity3d的游戏中实现分享功能,如图 思路: 1.分享功能的实现方式有多种,较方便快捷的一种是直接调用android的API来调出系统的分享界面 2.unity3d里面调用android的API需要为此编写一个android的插件 3.在插件(android的jar包)里面调用Intent类来实现Activity间的消息传递,换出系统的分享控制台 代码: Android插件代码 1 package com.XXX.XXX; 2 3 import android.content.I

Android分享---调用系统自带的分享功能

以前我们总想到友盟等平台分享功能的集成,集成这玩意还得下载对应的jar包.当然,用这些平台的分享并不是说什么好处都没有,至少人家的统计功能还是很实用的.不过有的时候我们是不需要多余功能的,只需要能分享就行,那我们就可以直接用Andriod系统自带有分享功能去完成了.下面我来介绍如何实现系统的分享功能: 分享文本信息 1 Intent intent = new Intent(Intent.ACTION_SEND); 2 intent.setType("text/plain"); 3 in

asp.net mvc 如何调用微信jssdk接口:分享到微信朋友(圈)| 分享到qq空间

如何在asp.net mvc 项目里, 调用微信jssdk接口,现实功能: 分享到微信朋友(圈)| 分享到qq空间 1 创建一个Action,准备一些数据,初始化数据(签名): /// <summary> /// 分享的内容 /// 必须写在html的head里面才可以生效 /// </summary> /// <param name="fxUrl"></param> /// <returns></returns>

微信开发-PC调试-JS-SDK功能之分享功能调试

一般涉及和第三方的开发调试,都会比较麻烦些.不过,像微信这样的大公司呢,产品技术是过硬的,所以,基本上只要自己把文档看仔细了,弄好了,基本就没有问题了. 对于后端接口一类的调试,主要就是通过打印访问日志的方式,进行一步步排查,常见的错误官方文档也有提示,仔细找找就能发现问题. 本文主要讲解js-sdk的调试方式,因此就不说后台接口的问题了. js-sdk的调试难点在于,在手机上的调试,无法监控各种传输状态,由于是js类的操作,也不方便打印日志什么的. 不过幸好,微信官方提供了一个pc版本的调试工

微信公众号,分享功能(朋友圈或朋友)

1.引入微信的js文件. <script type="text/javascript" src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script> 2.通过ajax从后台获取必填字段. appId: '', // 必填,公众号的唯一标识timestamp: '', // 必填,生成签名的时间戳<?= $data['timestamp']?>nonceStr: '',/

最全面的调用微信的扫一扫功能(java 排坑版)

最近碰到了这么一个需求,说是在前端页面调用手机本地的相机,扫描二维码这么一个需求,对于我一个后端来说, 这实在是难,难于上青天,但是决不能说一个不字.我说可以使用微信的扫码工具吗,这样可以方便一点,...(起码有个思路) 看着微信文档,一步一步坑下去.不对,是走下去. 这里我们用测试是公众号,方便测试. 首先配置自己的appID和appsecret,这里的测试帐号直接就给出了 第二步: 验证服务器,这个很简单,按照文档的规则验证就好了 第三步: 直接使用二级域名,不能添加http://前缀,或者