一、申请你的AppID

http://open.weixin.qq.com/

友情提示:推荐使用eclipse打包软件最后一步的MD5值去申请AppID

二、官网下载libammsdk.jar包

http://open.weixin.qq.com/download/?lang=zh_CN

三、将libammsdk.jar复制到工程的libs目录

四、在需要分享的Activity编写代码

  1. private IWXAPI wxApi;
  2. //实例化
  3. wxApi = WXAPIFactory.createWXAPI(this, Constants.WX_APP_ID);
  4. wxApi.registerApp(Constants.WX_APP_ID);
  5. /**
  6. * 微信分享 (这里仅提供一个分享网页的示例,其它请参看官网示例代码)
  7. * @param flag(0:分享到微信好友,1:分享到微信朋友圈)
  8. */
  9. private void wechatShare(int flag){
  10. WXWebpageObject webpage = new WXWebpageObject();
  11. webpage.webpageUrl = "这里填写链接url";
  12. WXMediaMessage msg = new WXMediaMessage(webpage);
  13. msg.title = "这里填写标题";
  14. msg.description = "这里填写内容";
  15. //这里替换一张自己工程里的图片资源
  16. Bitmap thumb = BitmapFactory.decodeResource(getResources(), R.drawable.share_logo);
  17. msg.setThumbImage(thumb);
  18. SendMessageToWX.Req req = new SendMessageToWX.Req();
  19. req.transaction = String.valueOf(System.currentTimeMillis());
  20. req.message = msg;
  21. req.scene = flag==0?SendMessageToWX.Req.WXSceneSession:SendMessageToWX.Req.WXSceneTimeline;
  22. wxApi.sendReq(req);
  23. }
  24. //在需要分享的地方添加代码:
  25. wechatShare(0);//分享到微信好友
  26. wechatShare(1);//分享到微信朋友圈

五、在你的包名相应目录下新建一个wxapi目录,并在该wxapi目录下新增一个WXEntryActivity类,该类继承自Activity,实现IWXAPIEventHandler接口

 
  1. /** 微信客户端回调activity示例 */
  2. public class WXEntryActivity extends Activity implements IWXAPIEventHandler {
  3. // IWXAPI 是第三方app和微信通信的openapi接口
  4. private IWXAPI api;
  5. @Override
  6. protected void onCreate(Bundle savedInstanceState) {
  7. api = WXAPIFactory.createWXAPI(this, "这里替换第一步申请的APP_ID", false);
  8. api.handleIntent(getIntent(), this);
  9. super.onCreate(savedInstanceState);
  10. }
  11. @Override
  12. public void onReq(BaseReq arg0) { }
  13. @Override
  14. public void onResp(BaseResp resp) {
  15. LogManager.show(TAG, "resp.errCode:" + resp.errCode + ",resp.errStr:"
  16. + resp.errStr, 1);
  17. switch (resp.errCode) {
  18. case BaseResp.ErrCode.ERR_OK:
  19. //分享成功
  20. break;
  21. case BaseResp.ErrCode.ERR_USER_CANCEL:
  22. //分享取消
  23. break;
  24. case BaseResp.ErrCode.ERR_AUTH_DENIED:
  25. //分享拒绝
  26. break;
  27. }
  28. }
  29. }

六、配置清单文件AndroidManifest.xml

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

七、签名打包软件,然后可以测试了

Android应用加入微信分享的更多相关文章

  1. Android开发 对接微信分享SDK总结

    原文:Android开发 对接微信分享SDK总结 - Stars-One的杂货小窝 公司项目需要对接微信分享,本来之前准备对接友盟分享的,但友盟的分享实际参数太多,而我又只需要对接一个微信分享,于是便 ...

  2. cocos2d-x C++ (Android)集成第三方微信分享

    ShareSDK Android for cocos2d-x 此文档为ShareSDK Android for cocos3.x的版本,如您集成的是2.X的版本文档请到这里:cocos2.x集成文档 ...

  3. android APP 中微信分享功能实现 的总结

    //花了很长时间最终完成了微信分享功能,中间走了很多弯路,在此做一下小结,希望对在应用中使用到微信分享的朋友有所帮助. 主要问题就是下面两个: 1.为什么运行了项目之后,微信分享只是闪了一下就没有了? ...

  4. Android 微信分享与QQ分享功能

    微信分享与QQ分享功能现在都挺常见的,可以根据一些第三方社会化分功能快速实现,不过多多少少都不怎么纯净,最好都是自己看官方文档来实现就最好了~ 一.微信分享 微信分享功能需要先在微信开放平台注册应用并 ...

  5. React Native 微信分享闪退的解决办法

    Android中编写微信分享功能时出现了闪退的现象,经过几番资料的查找,发现是应用签名的问题,解决办法如下: 1.    进入微信官网的开放平台--->资源中心---->资源下载----& ...

  6. android微信分享不出去?四步搞定!

    现在做的项目中集成了友盟分享,产品要求集成微信.朋友圈.QQ.QQ空间.短信这几个分享平台.按照友盟的文档集成一切都很顺利,集成成功以后测试QQ.QQ空间.短信都没有问题,唯独微信和朋友圈一直分享不出 ...

  7. Android微信分享图片大于32k进行压缩

    微信分享视频的时候,需要传一个图片数组,大小不能大于32k. 解决方案:使用Bitmap自带的compress方法解决了这个问题. 源码如下: <span style="font-si ...

  8. android微信分享要注意的地方

    最近在做android端分享的功能,在微信开放平台查看了下官网上的开发文档,一步一步的按文档上的步骤来: 1.申请你的AppID 2.下载开发工具包 3.搭建开发环境,引入libammsdk.jar文 ...

  9. React Native微信分享 朋友圈分享 Android/iOS 通用

    超详细React Native实现微信好友/朋友圈分享功能-Android/iOS双平台通用   2016/06/16 |  React Native技术文章 |  Sky丶清|  暂无评论 |  1 ...

随机推荐

  1. xp/2003开关3389指令

    开启3389: @echo offtitle 开启3389clsrem 开启3389reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ ...

  2. Eclipse Plugin for Hadoop

    Eclipse 官网下载向导 下载 下载的安装文件放到~/setupEnv,将安装到/opt目录下 cd ~/setupEnv sudo tar zxvf eclipse-java-kepler-SR ...

  3. function的prototype

    prototype只有function才有的属性. var a = function() { this.age = 12; this.name = "haha"; }; a.pro ...

  4. 图解 javascript 作用域链

    还是之前那一段简单的javascript代码: window.onload=function(){ function sub(a,b){ return a-b; } var result=sub(10 ...

  5. 白话CSS3的新特性

    声明:这篇文章不是手册,所以不会说的很详细,只是告诉初学者CSS3显著的改进有啥,高手老手绕行. 一.在边框上的改进 1.可以给方框加圆角了,值越大越圆,解决了过去大方框的不美观 2.可以给控件加阴影 ...

  6. appium获取android app的包名和主Activity

    方法一在appium的android setting中选择下载到电脑上的app包,获取Activity. 方法二在android-sdk中安装build-tools包,进入这个目录.aapt dump ...

  7. ExtJs之单选及多选框

    坚持 <!DOCTYPE html> <html> <head> <title>ExtJs</title> <meta http-eq ...

  8. hdu 4768 Flyer 二分

    思路:由于最多只有一个是奇数,所以二分枚举这个点,每次判断这个点的左边区间段所有点的和作为 二分的依据. 代码如下: #include<iostream> #include<cstd ...

  9. SELECT 语句不详解

    INSERT INTO ...  SELECT 语句, 将查询的结果插入到一张新表中(可为临时表) DECLARE @MyTable Table ( SalesOrderID int, Custome ...

  10. C Primer Plus之存储类、链接和内存管理

    存储时期即生存周期——变量在内存中保留的时间 变量的作用域和链接一起表明程序的哪些部分可以通过变量名来使用该变量. 注意:生存期和作用域是两个不同的概念. 作用域    作用域描述了程序中可以访问一个 ...