zoukankan      html  css  js  c++  java
  • Android应用加入微信分享

    一、申请你的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. //在需要分享的地方添加代码:  
    26. wechatShare(0);//分享到微信好友  
    27. 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.     }  
    30. }  

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

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

  • 相关阅读:
    iOS开发 -------- AFNetworking使用中遇到的小问题
    iOS开发 -------- AFNetworking实现简单的断点下载
    规则引擎-BRMS在企业开发中的应用
    MySQL系列教程(四)
    MySQL系列教程(三)
    MySQL系列教程(二)
    MySQL系列教程(一)
    OWASP Top 10十大风险 – 10个最重大的Web应用风险与攻防
    【事务】<查询不到同一调用方法其它事务提交的更新>解决方案
    iOS控制反转(IoC)与依赖注入(DI)的实现
  • 原文地址:https://www.cnblogs.com/Free-Thinker/p/3585834.html
Copyright © 2011-2022 走看看