目前官方还没有Android Studio整合说明
一.前期准备
1.帐号申请
https://open.weixin.qq.com/
首先登录微信开放平台,注册一个帐号
2.提交APP审核
为什么必须提交app审核呢?
![](https://i-blog.csdnimg.cn/blog_migrate/35cf38cf274aceeb4a4c04ed805ba2be.webp?x-image-process=image/format,png)
请看下图微信开放平台接口使用权限
不提交审核,根本没法用,无语了。。。
提交需要准备:应用名称,应用简介,应用图片(2828,108108),应用官网
android版本:需要提供应用签名,应用包名
具体参考官网,安装步骤一步步来
这里需要注意几点:
第一:关于应用签名,需要把你的app打包成APK安装到手机,然后通过签名工具,生成对应的签名
不得不说官方的签名工具真的是给人用的吗?
![](https://i-blog.csdnimg.cn/blog_migrate/03d25be628e1d6bbd29bd919fea7a40c.webp?x-image-process=image/format,png)
官方签名工具截图
我还是推荐使用新浪的签名工具吧!
![](https://i-blog.csdnimg.cn/blog_migrate/b6f848437d33e768af7c77e727402107.webp?x-image-process=image/format,png)
扫码安装
![](https://i-blog.csdnimg.cn/blog_migrate/6236810d9bcf07d2305ae2e90761d86d.webp?x-image-process=image/format,png)
新浪签名工具截图
第二:如果每次打包都是采用相关的证书,那么生成的签名是一样的!!!
下面就可以提交审核了,审核周期官方说是7天,一般1-2天就可以审核通过了!
![](https://i-blog.csdnimg.cn/blog_migrate/250d44cdf7c9045081d763d9004d3096.webp?x-image-process=image/format,png)
审核通过
APPID还是非常有用的,后面会用到。
3.手机安装微信客户端
补充:由于本Demo只是简单使用了文本分享API,如果你需要使用微信登录API,那么就需要进行开发者认证(具体认证流程请参考官网),非政府,事业单位,每年300,政府事业单位认证免费。
至此,前期所有的准备工作完成,下面进行代码的整合。
二.整合说明
1.导入SDK Jar包
![](https://i-blog.csdnimg.cn/blog_migrate/3fa9562f4679004593e7fc2e7bacb293.webp?x-image-process=image/format,png)
网页截图
导入到项目中
![](https://i-blog.csdnimg.cn/blog_migrate/e6fd68d68767c01a64b2e256bc5d43f7.webp?x-image-process=image/format,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。
![](https://i-blog.csdnimg.cn/blog_migrate/e9026ee3bc66db9fd10950dcb561cff1.webp?x-image-process=image/format,png)
注册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
![](https://i-blog.csdnimg.cn/blog_migrate/f0d7f93e95996c82d90d14a454da5bb4.webp?x-image-process=image/format,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方法
![](https://i-blog.csdnimg.cn/blog_migrate/46b1e734eae20f7a0afe2f28c47512c3.webp?x-image-process=image/format,png)
![](https://i-blog.csdnimg.cn/blog_migrate/5efc4400f7eac3573effa327b0669139.webp?x-image-process=image/format,png)
注意
如果需要混淆代码,为了保证sdk的正常使用,需要在proguard.cfg加上下面两行配置:
-keep class com.tencent.mm.sdk.* {;
}
问题汇总1:
![](https://i-blog.csdnimg.cn/blog_migrate/c1d181741e4910fdff6a046de9e1a48c.webp?x-image-process=image/format,png)
问题汇总2:通过Eclipse安装APK,无法直接测试
建议直接生成APK后,进行测试
至此,你已经能使用微信Android开发工具包的API内容了。如果想更详细了解每个API函数的用法,请查阅 Android 平台参考手册 或自行下载阅读微信SDK Sample Demo源码。
源码:
https://github.com/andli0626/wx_share_by-Android-Studio.git
效果:
![](https://i-blog.csdnimg.cn/blog_migrate/041a60fa3d0f6656c769eafaff6fc2b6.webp?x-image-process=image/format,png)
![](https://i-blog.csdnimg.cn/blog_migrate/f1f82c0ffc65005517ce485e0f397524.webp?x-image-process=image/format,png)
参数资料:
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
原文链接:http://www.jianshu.com/p/1b1a89d462f2
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。