V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
zjiecode
V2EX  ›  程序员

2 行代码集成微信推送服务,给自己推送提醒消息

  •  1
     
  •   zjiecode · 2019-05-04 14:45:57 +08:00 · 6661 次点击
    这是一个创建于 2065 天前的主题,其中的信息可能已经有所发展或是发生改变。

    之前我做过一个微信推送服务,wxpusher,使用的是 http 请求调用,但是感觉很多朋友写代码集成的时候,老是遇到这样那样的问题,浪费非常多的时间,因此我就再开发了一个 Java SDK,最少只需要 2 行代码就可以推送消息了。

    SDK 在这里,欢迎吐槽: https://github.com/zjiecode/wxpusher-client

    1、关注微信公众号:wxpusher,获取你自己的 userId

    2、添加依赖: compile 'com.zjiecode:wxpusher-client:1.0.3' //我用的 gradle,用 maven 的老哥自行发挥。

    3、调用 Java SDK 发送消息: WxPusher.send("这是一个测试消息","userId");

    是不是只有 2 行代码? 当然,用 maven 的老哥,可能添加依赖会多几行。哈哈

    另外吐槽一下,要在 mavenCenter 发一个包,真的是太麻烦了,硬生生折腾了半天。。。

    第 1 条附言  ·  2019-05-04 16:16:17 +08:00
    感谢一楼老哥提醒,应该至少是三行,还需要 import,哈哈。
    30 条回复    2019-09-24 15:34:50 +08:00
    ho121
        1
    ho121  
       2019-05-04 15:08:49 +08:00 via Android
    不用 import ?
    ksyson
        2
    ksyson  
       2019-05-04 15:15:13 +08:00 via iPhone
    一直在用,顺便问下做个客户端用老哥的服务可以吗?
    GPLer
        3
    GPLer  
       2019-05-04 15:53:08 +08:00
    userId 能重置吗?
    zjiecode
        4
    zjiecode  
    OP
       2019-05-04 16:15:52 +08:00
    @ho121 对哈,忘记了 import。哈哈。
    zjiecode
        5
    zjiecode  
    OP
       2019-05-04 16:17:09 +08:00
    @ksyson 做个客户端是啥意思呢?这个我们会长期免费维护,因为现在跑在上面的功能还比较多。
    zjiecode
        6
    zjiecode  
    OP
       2019-05-04 16:18:34 +08:00
    @GPLer 为了接入的简单,设计上是非常轻量级的,所以,userId 不支持修改,重置等。
    ksyson
        7
    ksyson  
       2019-05-04 16:20:20 +08:00 via iPhone
    @mrjiejiejie 就是在程序里用老哥的服务做推送~
    zjiecode
        8
    zjiecode  
    OP
       2019-05-04 16:37:45 +08:00
    @ksyson 可以的呢,你在客户端直接调用 api 就行了。不过从设计上来说,可以是你客户端调用你服务器,你服务器在转到 wxpusher,这样可以增加可靠性,一般设计不是避免客户端直接调用第三方接口嚒?
    ksyson
        9
    ksyson  
       2019-05-04 16:44:11 +08:00 via iPhone
    @mrjiejiejie 目前都是给朋友在用,所以没什么大碍
    ksyson
        10
    ksyson  
       2019-05-04 16:48:28 +08:00 via iPhone   ❤️ 1
    @mrjiejiejie 老哥,如果在公开发布的程序用到了 WxPusher,需要版权声明吗?(无论用不用到其实都会标注,只不过老哥如果有版权的要求,可以直接标注在程序启动页)
    pigcandance
        11
    pigcandance  
       2019-05-04 19:43:50 +08:00 via iPhone   ❤️ 1
    点赞
    zjiecode
        12
    zjiecode  
    OP
       2019-05-04 20:20:11 +08:00
    @ksyson 没有啥要求,MIT 协议,哈哈。感谢你考虑的这嚒周到,其实就像你说的,用到 WxPusher,都需要关注公众号,所以没有太大的影响。嘿嘿
    napsterwu
        13
    napsterwu  
       2019-05-04 21:30:07 +08:00 via iPhone
    server 酱好像更简单一些?
    zjiecode
        14
    zjiecode  
    OP
       2019-05-05 08:32:50 +08:00 via Android
    @napsterwu 嗯,他做的很优秀,但是你觉得他简单在哪儿呢?虚心请教一下,哈哈
    HansCathy
        15
    HansCathy  
       2019-05-05 08:45:32 +08:00
    点赞
    yc8332
        16
    yc8332  
       2019-05-05 09:46:47 +08:00
    优秀。。。还是用 http 接口方便一点
    bertsir
        17
    bertsir  
       2019-05-05 09:55:18 +08:00   ❤️ 1
    看了一下 java 包的源码,感觉 json 解析的部分不多,其实可以省去一个 fastjson,用原生的 JSONObject 去解析然后手动 new Result,还能再精简出来一个 jar 包
    draguo
        18
    draguo  
       2019-05-05 10:34:21 +08:00   ❤️ 1
    我觉得这个是服务号要比 server 酱的订阅号要好,但是会不会出现被举报的问题,最近 server 酱就是这样的问题。
    zjiecode
        19
    zjiecode  
    OP
       2019-05-05 13:27:07 +08:00
    @yc8332 主要是有很多小伙伴感觉调用 http 老是遇到各种问题,不知道怎嚒传参数。
    zjiecode
        20
    zjiecode  
    OP
       2019-05-05 13:28:18 +08:00
    @bertsir 你说的有道理,的确不多,后面我精简一下,做到极致。
    zjiecode
        21
    zjiecode  
    OP
       2019-05-05 13:30:01 +08:00
    @draguo 目前看来不会,会加垃圾信息的识别。
    napsterwu
        22
    napsterwu  
       2019-05-05 15:32:05 +08:00 via iPhone
    @napsterwu 无侵入呗,基本任何语言和环境都有标准的 http 方法,真正跨平台跨语言。比如在路由器环境起码 wget 是有的,不需要带来任何外部框架。至于复杂的 java 应用,就可以用应用自己封装好的 http 方法,而不是用推送带来的新 jar 包。万一你带来的 jar 包跟我现在的冲突了怎么办?
    zjiecode
        23
    zjiecode  
    OP
       2019-05-05 21:01:03 +08:00
    @napsterwu 直接的 http 调用是有的呢,请看这里: http://wxpusher.dingliqc.com/ ,上面发的 SDK,只是好多老哥,调用 http,总是遇到问题,所以我封装一下,给一个示例,避免浪费时间。哈哈。
    napsterwu
        24
    napsterwu  
       2019-05-05 22:48:12 +08:00 via iPhone
    @mrjiejiejie 好吧 是我疏忽了
    zjiecode
        25
    zjiecode  
    OP
       2019-05-06 08:57:19 +08:00 via Android
    @napsterwu 嘿嘿,没得事
    nishibushisha
        26
    nishibushisha  
       2019-05-06 21:46:41 +08:00
    微信公众号推送消息没有次数限制?
    zjiecode
        27
    zjiecode  
    OP
       2019-05-07 11:23:46 +08:00
    @nishibushisha 目前没有次数限制,如果后面发现有人恶意调用,就会加限制。及时加限制,应该也没有太大问题,不会影响实用的。
    datocp
        28
    datocp  
       2019-05-11 07:07:57 +08:00 via Android
    支持一下,国内有墙很多 app 无法获得推送信息。而微信作为一个 24 小时开着的 app 就无需第三方 app,关键速度快。
    zjiecode
        29
    zjiecode  
    OP
       2019-06-22 14:02:16 +08:00
    @datocp 对,所以很多简单提醒,用微信还是一个不错的办法。
    zhangneww
        30
    zhangneww  
       2019-09-24 15:34:50 +08:00
    这个看起来很厉害,还能分应用推送,怎么盈利呢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1028 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 19:08 · PVG 03:08 · LAX 11:08 · JFK 14:08
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.