您的位置:首页 > 移动开发 > 微信开发

Android开发_微信分享功能

2015-02-04 11:17 351 查看
在你的app应用里增加微信分享的功能,可以分享给好友、朋友圈。

首先,看官方文档这是必须的:


微信Android终端SDK新手使用指南http://open.weixin.qq.com/document/gettingstart/android/?lang=zh_CN

官方文档已经介绍的很详细了,不过有一些地方,我们在开发的时候需要注意。说明以下两块:

1. 微信SDK Sample Demo源码 怎么build才能分享成功

Demo代码目录下有一个debug.keystore文件,在build的时候按照这个来签名,demo编出来的app才能成功分享到微信。

修改android默认签名文件见下图:windown->preferences





2. 我们自己开发

1) 申请AppId,注意申请提交的app要用你最终打包的签名。申请成功之后,app包名就不要变了,因为与appID是对应的。

2) 按照官方文档中,新建WXEntryActivity,注意其所在的包必须是”app包名”+.wxapi。其实这个实现了IWXAPIEventHandler 这个接口,是被微信那边来回调的。

请求微信分享的调用api.sendReq在其他Activity中都行,跟WXEntryActivity这个没有关系。

3) 打包测试的时候,用最终要打包的签名文件测试,这样才能分享成功。(packagename、打包签名的key、申请的appid这三者要对应,测试才能成功)

4) 在app中,我们往往都要知道是否分享成功了,微信已经提供了回调。

回调后是进入到WXEntryActivity这个activity了,所以在onResp()函数中添加this.finish来退出这个activity,返回到我们自己app的activity。

在WXEntryActivity的回调函数中,可以类似这么写。

1     public void onResp(BaseResp resp) {
2         int result = 0;
3
4         switch (resp.errCode) {
5         case BaseResp.ErrCode.ERR_OK:
6             result = R.string.errcode_success;
7             break;
8         case BaseResp.ErrCode.ERR_USER_CANCEL:
9             result = R.string.errcode_cancel;
10             break;
11         case BaseResp.ErrCode.ERR_AUTH_DENIED:
12             result = R.string.errcode_deny;
13             break;
14         default:
15             result = R.string.errcode_unknown;
16             break;
17         }
18
19         Toast.makeText(this, result, Toast.LENGTH_LONG).show();
20
21         // TODO 微信分享 成功之后调用接口
22         this.finish();
23     }


另外,声明Activity的时候,把activity透明.

1          <activity
2             android:name=".wxapi.WXEntryActivity"
3             android:screenOrientation="portrait"
4             android:theme="@style/No_Background"
5             android:exported="true"
6             />


以上是自己的一个简单记录。

参考文档:

Android 微信分享操作后 在当前界面提示方案 解决


微信分享实例http://www.eoeandroid.com/thread-297874-1-1.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: