微信分享

一、申请你的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();  
  13.     msg.mediaObject = webpage;
  14.     msg.title = "这里填写标题";  
  15.     msg.description = "这里填写内容";  
  16.     //这里替换一张自己工程里的图片资源  
  17.     Bitmap thumb = BitmapFactory.decodeResource(getResources(), R.drawable.share_logo);  
  18.     msg.setThumbImage(thumb);  
  19.       
  20.     SendMessageToWX.Req req = new SendMessageToWX.Req();  
  21.     req.transaction = String.valueOf(System.currentTimeMillis());  
  22.     req.message = msg;  
  23.     req.scene = flag==0?           SendMessageToWX.Req.WXSceneSession:SendMessageToWX.Req.WXSceneTimeline;  
  24.     wxApi.sendReq(req);  
  25. }  
  26. //在需要分享的地方添加代码:  
  27. wechatShare(0);//分享到微信好友  
  28. 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.         switch (resp.errCode) {  
  17.         case BaseResp.ErrCode.ERR_OK:  
  18.             //分享成功  
  19.             break;  
  20.         case BaseResp.ErrCode.ERR_USER_CANCEL:  
  21.             //分享取消  
  22.             break;  
  23.         case BaseResp.ErrCode.ERR_AUTH_DENIED:  
  24.             //分享拒绝  
  25.             break;  
  26.         }  
  27.     }  
  28. }  

六、配置清单文件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" />  

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

原文地址:https://www.cnblogs.com/lianghui66/p/4788163.html