陋室铭
永远也不要停下学习的脚步(大道至简至易)

posts - 2169,comments - 570,views - 413万

一、申请你的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.      
  19.     SendMessageToWX.Req req = new SendMessageToWX.Req(); 
  20.     req.transaction = String.valueOf(System.currentTimeMillis()); 
  21.     req.message = msg; 
  22.     req.scene = flag==0?SendMessageToWX.Req.WXSceneSession:SendMessageToWX.Req.WXSceneTimeline; 
  23.     wxApi.sendReq(req); 
  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.  
  14.     @Override 
  15.     public void onResp(BaseResp resp) { 
  16.         LogManager.show(TAG, "resp.errCode:" + resp.errCode + ",resp.errStr:" 
  17.                 + resp.errStr, 1); 
  18.         switch (resp.errCode) { 
  19.         case BaseResp.ErrCode.ERR_OK: 
  20.             //分享成功 
  21.             break; 
  22.         case BaseResp.ErrCode.ERR_USER_CANCEL: 
  23.             //分享取消 
  24.             break; 
  25.         case BaseResp.ErrCode.ERR_AUTH_DENIED: 
  26.             //分享拒绝 
  27.             break; 
  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" /> 

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

posted on   宏宇  阅读(194)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
历史上的今天:
2013-10-31 自定义ASP.NET MVC Html辅助方法
2013-10-31 MVC系统过滤器(局部缓存,局部动态)
2007-10-31 新工作的日文环境真叫人受不了
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示