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编写代码 

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

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

     
    /** 微信客户端回调activity示例 */  
    public class WXEntryActivity extends Activity implements IWXAPIEventHandler {  
        // IWXAPI 是第三方app和微信通信的openapi接口  
        private IWXAPI api;  
        @Override  
        protected void onCreate(Bundle savedInstanceState) {  
            api = WXAPIFactory.createWXAPI(this, "这里替换第一步申请的APP_ID", false);  
            api.handleIntent(getIntent(), this);  
            super.onCreate(savedInstanceState);  
        }  
        @Override  
        public void onReq(BaseReq arg0) { }  
      
        @Override  
        public void onResp(BaseResp resp) {  
            LogManager.show(TAG, "resp.errCode:" + resp.errCode + ",resp.errStr:"  
                    + resp.errStr, 1);  
            switch (resp.errCode) {  
            case BaseResp.ErrCode.ERR_OK:  
                //分享成功  
                break;  
            case BaseResp.ErrCode.ERR_USER_CANCEL:  
                //分享取消  
                break;  
            case BaseResp.ErrCode.ERR_AUTH_DENIED:  
                //分享拒绝  
                break;  
            }  
        }  
    }  

    六、配置清单文件AndroidManifest.xml 

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

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

  • 相关阅读:
    linux常用命令
    mysql 开发基础系列20 事务控制和锁定语句(上)
    sql server 性能调优之 资源等待 CXPACKET
    mysql 开发基础系列19 触发器
    mysql 开发基础系列18 存储过程和函数(下)
    mysql 开发基础系列17 存储过程和函数(上)
    sql server 性能调优之 资源等待PAGEIOLATCH
    mysql 开发基础系列16 视图
    mysql 开发基础系列15 索引的设计和使用
    sql server 性能调优之 当前用户请求分析 (1)
  • 原文地址:https://www.cnblogs.com/zhujiabin/p/7527066.html
Copyright © 2011-2022 走看看