一、申请你的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. ASP.Net 上传进度条的实现方法

    对于加载时间比较长的ASP.NET页面,我们可以在客户端浏览器中显示进度条来显示页面正在装载.下面就是具体的实现过程: 新建项目,名字为WebPortal,在项目类型中选择Visual C#项目或者V ...

  2. 我收集到的最好的jQuery和CSS3导航菜单

    jQuery和CSS3导航菜单在网页设计和开发的重要组成部分之一.利用jQuery+CSS3实现可以做出拥有各种动画效果的漂亮菜单.在这里,我们收集了一些最好的jQuery+CSS3实现的导航菜单. ...

  3. Cortex-M3/4的Hard Fault调试方法

    1 Cortex-M3/4的Fault简介 Cortex-M3/4的Fault异常是由于非法的存储器访问(比如访问0地址.写只读存储位置等)和非法的程序行为(比如除以0等)等造成的.常见的4种异常及产 ...

  4. 总结 | 如何测试你自己的 RubyGem

    如何测试一个Gem gem 开发完了,想要给别人用,那就需要测试啊,测试一个 gem 其实很简单,这里我们用 minitest 为例, rspec 也一样适用.先来看看我们当前这个 gem 的目录结构 ...

  5. iOS16进制设置颜色

    UIColor+Hex.h // // UIColor+Hex.h // 16进制颜色类别 // // Created by apple on 15-4-3. // Copyright (c) 201 ...

  6. Android 源码 判断网络数据类型

    private final void updateDataNetType(int slotId) { int tempDataNetType; NetworkType tempDataNetType3 ...

  7. 递推DP HDOJ 5328 Problem Killer

    题目传送门 /* 递推DP: 如果a, b, c是等差数列,且b, c, d是等差数列,那么a, b, c, d是等差数列,等比数列同理 判断ai-2, ai-1, ai是否是等差(比)数列,能在O( ...

  8. Sold out

    When will the writer see the play? 'The play may begin at any moment,'I said. 'It may have begun alr ...

  9. Android核心分析之二十六Android GDI之SurfaceFlinger

    Android GDI之SurfaceFlinger SurfaceFinger按英文翻译过来就是Surface投递者.SufaceFlinger的构成并不是太复杂,复杂的是他的客户端建构.Sufac ...

  10. sftp的安装和使用

    http://blog.srmklive.com/2013/04/24/how-to-setup-sftp-server-ftp-over-ssh-in-ubuntu/ In my previous ...