在Android中分享内容到微信
来源:互联网 发布:图片热点 js 边框 编辑:程序博客网 时间:2024/04/30 04:38
在Aandroid中分享内容到微信
最近在为我的网站初中物理仿真演示实验汇编开发一个Android客户端,以便教师或学生能够在手机或平板中浏览使用物理仿真模拟。并且实现“网站-微信订阅号-手机APP”三者互通。这需要能够在我的APP中能够向微信中发送分享信息,为此我花了两天时间来开发在Android中分享内容到微信的功能。其中碰到不少坑,现将开发过程分享如下:
微信的三个平台
微信公众平台:和微信公众号、订阅号有关。并提供接口可以和自己的网站进行对接。
微信开放平台:为移动应用和网站应用提供内容分享接口。
腾讯开放平台:开发好的APP可以在这里发布到应用宝内。
如果要开发APP,并通过APP向微信内分享内容,应该使用“微信开放平台”
微信开放平台开发介绍
在你注册应用,并且应用通过审核后。可以“资源中心”找到帮助内容,开发的SDK,以及例子。我把例子的代码粘到这里
微信SDK Sample Demo源码
分享内容到微信
直接贴代码如下:
public IWXAPI wx; private WXApi(Context context){ wx = WXAPIFactory.createWXAPI(context, AppID, true);//AppID为注册的APP ID boolean b = wx.registerApp(AppID); }
分享的代码
/** * 分享文字 * * @param shareContent 分享内容 * @param type 分享类型,朋友圈、收藏、好友,类型定义在SendMessageToWX.Req中,共三种WXSceneFavorite,WXSceneSession,WXSceneTimeline */ public void shareText(String shareContent, int type) { if (!shareContent.isEmpty()) { WXTextObject textObj = new WXTextObject(); textObj.text = shareContent; WXMediaMessage msg = new WXMediaMessage(); msg.mediaObject = textObj; // 发送文本类型的消息时,title字段不起作用 // msg.title = "Title"; msg.description = shareContent; // 构造一个Req SendMessageToWX.Req req = new SendMessageToWX.Req(); req.transaction = buildTransaction("text"); // transaction字段用于唯一标识一个请求 req.message = msg; req.scene = type; wx.sendReq(req); } }
接收返回信息
如果你的程序需要接收微信发送的请求,或者接收发送到微信请求的响应结果,需要下面3步操作:
a. 在你的包名相应目录下新建一个wxapi目录,并在该wxapi目录下新增一个WXEntryActivity类,该类继承自Activity(例如应用程序的包名为net.sourceforge.simcpux,则新添加的类如下图所示)
并在manifest文件里面加上exported属性,设置为true,例如:
b. 实现IWXAPIEventHandler接口,微信发送的请求将回调到onReq方法,发送到微信请求的响应结果将回调到onResp方法
c. 在WXEntryActivity中将接收到的intent及实现了IWXAPIEventHandler接口的对象传递给IWXAPI接口的handleIntent方法,示例如下图:
当微信发送请求到你的应用,将通过IWXAPIEventHandler接口的onReq方法进行回调,类似的,应用请求微信的响应结果将通过onResp回调。
分享内容时碰到的坑——应用签名出错
- 返回信息为 -6:在网上查找,错误代码里没有定义。但从源码中可以看到,-6表示拒绝。在类BaseResp中有定义。最有可能的原因是申请时填的签名不对。
- 把应用签名改正确也不起作用,因为手机微信里有缓存,必须重新安装微信才管用。
- 如果你是用APKTool查到的签名MD5代码,要注意去除:号,并全部小写。
- 最好使用腾讯开放平台提供的获取应用签名的工具看一下签名是否和提交的相同。
- Android Studio debug使用release的签名
- 在Android中分享内容到微信
- Android实现分享内容到微信朋友圈
- Android 最大化分享图文内容
- Android 使用微信开放平台分享内容到微信
- 了解你的孩子在社交网络中分享的内容——过度分享的真实案例
- 【Android Training - 06】分享数据内容 [Lesson 3 - 在ActionBar上添加Share Action]
- 如何在网页中通过js代码将内容分享到朋友圈?
- 在android平台微信分享图片中带超链接
- 在安装Android Studio中遇见的问题分享
- 在Android Studio中使用shareSDK进行社会化分享
- 在Android studio项目中集成友盟分享
- Android分享中,如何过滤指定的应用,并且对不同的分享方式发送不同的内容?
- Android分享中,如何过滤指定的应用,并且对不同的分享方式发送不同的内容?
- Android分享中,如何过滤指定的应用,并且对不同的分享方式发送不同的内容?
- Android分享中,如何过滤指定的应用,并且对不同的分享方式发送不同的内容?
- Android分享中,如何过滤指定的应用,并且对不同的分享方式发送不同的内容?
- Android中实现APP文本内容的分享发送与接收方法简述
- 在Android中全屏显示内容,隐藏覆盖通知栏
- [bigdata-006] 工作流 tez和oozie
- 【MySQL】变量实现分析函数
- java基础2
- 数据结构与算法(C语言版)__排列组合
- Java-NowCoder-图片整理
- 在Android中分享内容到微信
- 随想录(objc的编译)
- 读书笔记-如何正确的发布并发对象
- 明年2月就28了!希望自己的选择正确
- dijkstra堆优化(multiset实现->大大减小代码量)
- Linux环境、基本软件安装配置
- Http请求post方法,请求和响应中文乱码问题的一点解决方法
- Aspose Word Java 创建页眉页脚Demo
- 深度学习与计算机视觉系列(3)_线性SVM与SoftMax分类器