专栏首页移动大前端Android微信之简单文本分享(集成官方SDK-Android Studio)

Android微信之简单文本分享(集成官方SDK-Android Studio)

目前官方还没有Android Studio整合说明

一.前期准备

1.帐号申请 https://open.weixin.qq.com/ 首先登录微信开放平台,注册一个帐号 2.提交APP审核 为什么必须提交app审核呢?

请看下图微信开放平台接口使用权限 不提交审核,根本没法用,无语了。。。 提交需要准备:应用名称,应用简介,应用图片(2828,108108),应用官网 android版本:需要提供应用签名,应用包名 具体参考官网,安装步骤一步步来 这里需要注意几点: 第一:关于应用签名,需要把你的app打包成APK安装到手机,然后通过签名工具,生成对应的签名 不得不说官方的签名工具真的是给人用的吗?

官方签名工具截图

我还是推荐使用新浪的签名工具吧!

扫码安装

新浪签名工具截图

第二:如果每次打包都是采用相关的证书,那么生成的签名是一样的!!! 下面就可以提交审核了,审核周期官方说是7天,一般1-2天就可以审核通过了!

审核通过

APPID还是非常有用的,后面会用到。 3.手机安装微信客户端 补充:由于本Demo只是简单使用了文本分享API,如果你需要使用微信登录API,那么就需要进行开发者认证(具体认证流程请参考官网),非政府,事业单位,每年300,政府事业单位认证免费。 至此,前期所有的准备工作完成,下面进行代码的整合。

二.整合说明

1.导入SDK Jar包

sdk下载地址: https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419319167&lang=zh_CN

网页截图

导入到项目中

导入jar包.png

2.添加必要的权限

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

3.向微信APP注册你的id 要使你的程序启动后微信终端能响应你的程序,必须在代码中向微信终端注册你的id。

注册APP_ID

4.发起文本分享请求

 // 文本分享
 private void shareText() {   
 // 初始化一个WXTextObject对象   
 WXTextObject textObj = new WXTextObject();   
 textObj.text = "微信文本分享测试";   
 // 用WXTextObject对象初始化一个WXMediaMessage对象   
 WXMediaMessage msg = new WXMediaMessage();   
 msg.mediaObject = textObj;   // 发送文本类型的消息时,title字段不起作用   
 // msg.title = "Will be ignored";   
 msg.description = "微信文本分享测试";   // 构造一个Req   
 SendMessageToWX.Req req = new SendMessageToWX.Req();   
 req.transaction = buildTransaction("text"); // transaction字段用于唯一标识一个请求   
 req.message = msg;   // 分享或收藏的目标场景,通过修改scene场景值实现。   
 // 发送到聊天界面 —— WXSceneSession   
 // 发送到朋友圈 —— WXSceneTimeline   
 // 添加到微信收藏 —— WXSceneFavorite   
 req.scene = SendMessageToWX.Req.WXSceneTimeline;   
 // 调用api接口发送数据到微信   
 api.sendReq(req);  
 }

5.处理分享成功后的回调 如果你的程序需要接收微信发送的请求,或者接收发送到微信请求的响应结果,需要下面操作 a.在你的包名相应目录下新建一个wxapi目录,并在该wxapi目录下新增一个WXEntryActivity类,该类继承自Activity

微信回调处理类.png

特别说明:包名必须和中间平台里填写的包名保持一直,否则回调失败 特别说明:包名必须和中间平台里填写的包名保持一直,否则回调失败 特别说明:包名必须和中间平台里填写的包名保持一直,否则回调失败 并在manifest文件里面加上exported属性,设置为true,例如:

    <!-- 
     将WXEntryActivity设置为透明 android:theme="@android:style/Theme.Translucent"
     这样就解决了,微信分享成功后,跳转到指定WXEntryActivity,显示微信分享信息,
     而给用户视觉效果就在当前界面。 
     -->

    <activity
    android:name="wxapi.WXEntryActivity"
    android:exported="true"
    android:theme="@android:style/Theme.Translucent" >
    </activity>

b. 实现IWXAPIEventHandler接口,微信发送的请求将回调到onReq方法,发送到微信请求的响应结果将回调到onResp方法

注意

如果需要混淆代码,为了保证sdk的正常使用,需要在proguard.cfg加上下面两行配置: -keep class com.tencent.mm.sdk.** { *; }

问题汇总1:

问题汇总2:通过Eclipse安装APK,无法直接测试

建议直接生成APK后,进行测试 至此,你已经能使用微信Android开发工具包的API内容了。如果想更详细了解每个API函数的用法,请查阅 Android 平台参考手册 或自行下载阅读微信SDK Sample Demo源码。

源码:

https://github.com/andli0626/wx_share_by-Android-Studio.git

效果:

参数资料:

https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=1417751808&token=&lang=zh_CN http://www.bkjia.com/Androidjc/979960.html http://androidmaster.iteye.com/blog/1887876

image

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Android微信之登录授权(集成官方SDK-Eclipse)

    文章参考:http://www.jianshu.com/p/2ea8ae0618ef

    专注APP开发
  • Android微信之简单文本分享(ShareSDK-Eclipse)

    开发工具:Eclipse 开发环境:mac os ShareSDK版本:V2.7.2(下载地址:https://dn-epoint.qbox.me/Shar...

    专注APP开发
  • Android微信之简单文本分享(ShareSDK-Android Studio)

    ShareSDK的官方关于Android Studio的整合写的比较乱,整合的时候遇到了一些坑,自己总结下。

    专注APP开发
  • Android微信之登录授权(集成官方SDK-Eclipse)

    文章参考:http://www.jianshu.com/p/2ea8ae0618ef

    专注APP开发
  • CMD魔法堂:支持显示UTF8编码的中文

    一、前言                                     在Unbuntu中用sqlite3-command-line操作sqlite3...

    ^_^肥仔John
  • 微信公众号运营路在何方

    微信公众号最近几年异军突起,遍地开花。微信公众号相对于复杂的手机APP有得天独厚的优势,同时也存在不和避免的缺陷。开发者依赖微信生态圈,又死死的被限定在微信生态...

    BestSDK
  • 副业刚需

    近一个词突然火了起来,叫 副业刚需。我们知道房子是有刚需这一说法,没想到副业也出现了刚需。

    不安分的猿人
  • 微信介绍篇

    首先我们做一件事情就得首先了解这个事情,这样我们才会达到我们想要的效果,做程序开发也一样,尤为重要。

    A梦多啦A
  • 微信快速发送位置定位怎么弄【微信高级教程4】

      耗电量大是大多数智能手机的痛,好玩的东西多了,电量也撑不了多久。手机快没电时如何快速发送微信位置给好友好让他容易找到你呢?微信就内藏这样的彩蛋。   在微信...

    ytkah
  • Python习题集(七)

    https://www.cnblogs.com/poloyy/category/1676599.html

    小菠萝测试笔记

扫码关注云+社区

领取腾讯云代金券