微信公众号开发(4)---使用开源组件开发自定义菜单栏的创建

我们引入的开源微信开发的依赖中,对于微信菜单的创建所需要的参数进行了很好的封装,我们只需要按照微信文档开发的规范,进行参数的设置就好了--

关于微信菜单开发的格式:

 {
     "button":[
     {    
          "type":"click",
          "name":"今日歌曲",
          "key":"V1001_TODAY_MUSIC"
      },
      {
           "name":"菜单",
           "sub_button":[
           {    
               "type":"view",
               "name":"搜索",
               "url":"http://www.soso.com/"
            },
            {
                 "type":"miniprogram",
                 "name":"wxa",
                 "url":"http://mp.weixin.qq.com",
                 "appid":"wx286b93c14bbf93aa",
                 "pagepath":"pages/lunar/index"
             },
            {
               "type":"click",
               "name":"赞一下我们",
               "key":"V1001_GOOD"
            }]
       }]
 }

对于这种格式,我们的sdk将其封装在了  WxMenu 类中

然后调用  WxMpServiceImpl 的 getMenuService().menuCreate(menu); 方法

代码如下(红色需要配置成我们自己的)

    @Autowired
    private WxMpInMemoryConfigStorage config;
    @Autowired
    private WxMpService wxMpService;
    
    
    @RequestMapping("/wx/menu")
    public void createMenu() throws WxErrorException {
        
        
        
            WxMenu menu = new WxMenu();
            WxMenuButton button1 = new WxMenuButton();
            button1.setType(WxConsts.MenuButtonType.CLICK);
            button1.setName("今日歌曲");
            button1.setKey("V1001_TODAY_MUSIC");

//            WxMenuButton button2 = new WxMenuButton();
//            button2.setType(WxConsts.MenuButtonType.MINIPROGRAM);
//            button2.setName("小程序");
//            button2.setAppId("wx286b93c14bbf93aa");
//            button2.setPagePath("pages/lunar/index.html");
//            button2.setUrl("http://mp.weixin.qq.com");

            WxMenuButton button3 = new WxMenuButton();
            button3.setName("菜单");
           
            menu.getButtons().add(button1);
//            menu.getButtons().add(button2);
            menu.getButtons().add(button3);

            WxMenuButton button31 = new WxMenuButton();
            button31.setType(WxConsts.MenuButtonType.VIEW);
            button31.setName("搜索");
            button31.setUrl("http://www.soso.com/");

            WxMenuButton button32 = new WxMenuButton();
            button32.setType(WxConsts.MenuButtonType.VIEW);
            button32.setName("视频");
            button32.setUrl("http://v.qq.com/");

            WxMenuButton button33 = new WxMenuButton();
            button33.setType(WxConsts.MenuButtonType.CLICK);
            button33.setName("爱你呦");
            button33.setKey("V1001_GOOD");

            button3.getSubButtons().add(button31);
            button3.getSubButtons().add(button32);
            button3.getSubButtons().add(button33);
            //我们可以将config配置在xml文件中管理
            config.setAppId("wx426aad126775582c");
            config.setSecret("d79b69215c50cee0c848415eb34c659a");
            wxMpService.setWxMpConfigStorage(config);
            wxMpService.getMenuService().menuCreate(menu);
            
    }

 

转载于:https://www.cnblogs.com/iscys/p/9536278.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值