精华内容
下载资源
问答
  • 苹果免越狱(越狱都支持) 1. 防封稳定 2. 设置简单、功能粗爆 3. 开关设置-进群右上角开关
  • 企业微信刚推出的定制红包模板,用于企业微信内员工。
  • iOS版微信红包插件

    2021-04-06 08:20:13
    作者buginux,源码WeChatRedEnvelop,iOS版微信红包Tweak。目前市面上最稳定、功能最全的 iOS 版微信红包插件。 功能特色 完全原生体验 完美嵌入微信设置中,无需安装其它无关应用。开启插件后,所有抢红包...
  • 本文为大家分享了微信小程序实现红包雨的具体代码,供大家参考,具体内容如下 今天有个小师妹来问我怎样用微信小程序实现红包雨效果,如果用web很好实现,但是小程序不是那么容易,整合自己也有一年没摸过小程序了,...
  • java实现微信红包发放

    2018-07-04 15:13:29
    java实现微信红包发放,根据微信用户的openid进行发放普通红包
  • 企业微信支付之发送红包接口实现

    千次阅读 2020-11-20 15:01:41
    企业微信接口定义: 企业微信AP地址:https://work.weixin.qq.com/api/doc/90000/90135/90275 请求方式:POST(HTTPS) 请求地址:https://api.mch.weixin.qq.com/mmpaymkttransfers/sendworkwxredpack 是否需要...

    遇到的坑要写下来。

    企业微信接口定义:

    企业微信AP地址:https://work.weixin.qq.com/api/doc/90000/90135/90275

    请求方式:POST(HTTPS

    请求地址:https://api.mch.weixin.qq.com/mmpaymkttransfers/sendworkwxredpack

    是否需要证书:是(注:这里的是否需要证书指的是在post请求中需要携带证书,证书最好按照企业微信的建议放在一个有读取权限的位置)

    数据格式:xml

    证书使用详见:https://pay.weixin.qq.com/wiki/doc/api/tools/mch_pay.php?chapter=4_3

    请求示例:

    <xml>
        <nonce_str>5K8264ILTKCH16CQ2502SI8ZNMTM67VS</nonce_str>
        <sign>C380BEC2BFD727A4B6845133519F3AD6</sign>
        <mch_billno>123456</mch_billno>
        <mch_id>10000098</mch_id>
        <wxappid>wx8888888888888888</wxappid>
        <sender_name>XX活动</sender_name>
        <sender_header_media_id>1G6nrLmr5EC3MMb_-zK1dDdzmd0p7cNliYu9V5w7o8K0</sender_header_media_id>
        <re_openid>oxTWIuGaIt6gTKsQRLau2M0yL16E</re_openid>
        <total_amount>1000</total_amount>
        <wishing>感谢您参加猜灯谜活动,祝您元宵节快乐!</wishing>
        <act_name>猜灯谜抢红包活动</act_name>
        <remark>猜越多得越多,快来抢!</remark>
        <workwx_sign>99BCDAFF065A4B95628E3DB468A874A8</workwx_sign>
    </xml>

    参数说明:

    字段名字段必填示例值类型说明
    随机字符串nonce_str5K8264ILTKCH16CQ2502SI8ZNMTM67VSString(32)随机字符串,不长于32位
    微信支付签名signC380BEC2BFD727A4B6845133519F3AD6String(32)参见“签名算法
    商户订单号mch_billno123456String(28)商户订单号(每个订单号必须唯一。取值范围:0~9,a~z,A~Z).接口根据商户订单号支持重入,如出现超时可再调用。组成参考:mch_id+yyyymmdd+10位一天内不能重复的数字
    商户号mch_id10000098String(32)微信支付分配的商户号
    公众账号appidwxappidwx8888888888888888String(32)微信分配的公众账号ID(企业微信corpid即为此appId)。接口传入的所有appid应该为公众号的appid(在mp.weixin.qq.com申请的),不能为APP的appid(在open.weixin.qq.com申请的)。
    发送者名称sender_nameXX活动String(128)以个人名义发红包,红包发送者名称(需要utf-8格式)。与agentid互斥,二者只能填一个。
    发送红包的应用idagentid1unsigned int以企业应用的名义发红包,企业应用id,整型,可在企业微信管理端应用的设置页面查看。与sender_name互斥,二者只能填一个。
    发送者头像sender_header_media_id1G6nrLmr5EC3MMb_-zK1dDdzmd0p7cNliYu9V5w7o8K0String(128)发送者头像素材id,通过企业微信开放上传素材接口获取
    用户openidre_openidoxTWIuGaIt6gTKsQRLau2M0yL16EString(32)接受红包的用户.用户在wxappid下的openid。获取用户openid参见:http://work.weixin.qq.com/api/doc#11279
    金额total_amount1000int金额,单位分,单笔最小金额默认为1元
    红包祝福语wishing感谢您参加猜灯谜活动,祝您元宵节快乐!String(128)红包祝福语
    项目名称act_name猜灯谜抢红包活动String(32)项目名称
    备注remark猜越多得越多,快来抢!String(256)备注信息
    场景scene_idPRODUCT_1String(32)发放红包使用场景,红包金额大于200或者小于1元时必传
    PRODUCT_1:商品促销
    PRODUCT_2:抽奖
    PRODUCT_3:虚拟物品兑奖
    PRODUCT_4:企业内部福利
    PRODUCT_5:渠道分润
    PRODUCT_6:保险回馈
    PRODUCT_7:彩票派奖
    PRODUCT_8:税务刮奖
    企业微信签名workwx_sign企业微信签名String(32)参见“签名算法

     代码实现:

       单元测试主类:

    package com.cth.src;
    
    import com.cth.src.work.request.EmployeeGetOpenIdRequest;
    import com.cth.src.work.response.EmployeeGetOpenIdResponse;
    import com.cth.src.work.response.MediaUploadResponse;
    import com.cth.src.work.utils.IamMultipartFile;
    import com.cth.src.work.utils.ScrmStrinUtils;
    import com.cth.src.work.weComService.EmployeeService;
    import com.cth.src.work.weComService.MediaService;
    import com.cth.src.work.weComService.SendRedPacketService;
    import lombok.extern.slf4j.Slf4j;
    import org.junit.jupiter.api.Test;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.boot.test.context.SpringBootTest;
    import org.springframework.web.multipart.MultipartFile;
    
    import java.io.File;
    import java.io.IOException;
    import java.util.HashMap;
    import java.util.Map;
    
    /**
     * @author chengtonghua
     * @date 2020-11-17
     */
    @SpringBootTest(classes = TopKApplication.class)
    @Slf4j
    public class PayTest {
        @Autowired
        private SendRedPacketService sendRedPacketService;
    
        @Test
        public void sendworkwxredpack() {
            //构建企业微信签名
            try {
                Map<String, String> paramsMap = new HashMap<>();
                //项目名称
                paramsMap.put("act_name", "猜灯谜抢红包活动");
                //商户订单号
                paramsMap.put("mch_billno", UUID.randomUUID().toString().replace("-", "").substring(0,28));
                //商户号微信商户平台获取
                paramsMap.put("mch_id", "");
                //随机字符串
                paramsMap.put("nonce_str", ScrmStrinUtils.generateNonceStr());
                //用户openid(根据应用类型,调用企业微信接口使用客户userId换取客户的openId)
                paramsMap.put("re_openid", "");
                //金额 单位分,单笔最小金额默认为1元
                paramsMap.put("total_amount", "1");
                //公众账号appid  天坑 此处一定要配置微信商户平台的appID
                paramsMap.put("wxappid", "你的微信商户平添appId");
                //放这的原因是以上字段为企业微信签名固定字段
                //此处的secret是 企业微信应用中的企业支付应用的Secret(文档并没有阐明,坑)
                String secret = "企业微信应用中的企业支付应用的Secret";
                String workwxSign = ScrmStrinUtils.generateSignature(paramsMap,secret, "qywx");
                //企业微信签名
                paramsMap.put("workwx_sign", workwxSign);
                //发送者名称
    //           paramsMap.put("sender_name", "ss");
                //企业微信中发送红包的应用ID
                paramsMap.put("agentid", "应用ID");
                //发送者头像((需要调用素材库上传素材接口)上传用户头衔到临时素材库中换取头像的素材ID)
    //            paramsMap.put("sender_header_media_id", "素材Id");
                //场景 --发放红包使用场景,红包金额大于200或者小于1元时必传
                paramsMap.put("scene_id", "PRODUCT_1");
                //红包祝福语
                paramsMap.put("wishing", "测试通过");
                //备注
                paramsMap.put("remark", "");
                //构建微信支付签名 
                String key = "此处的key为微信商户平台的api密钥";
                String sign = ScrmStrinUtils.generateSignature(paramsMap, key, "wx");
                //微信支付签名 需要将企业微信签名也包含进来
                paramsMap.put("sign", sign);
                String play = sendRedPacketService.sendworkwxredpack(ScrmStrinUtils.mapToXml(paramsMap));
                //注意 ,此处只是简单拿到企业微信返回值而已,如果要使用在生产环境一定要校验企业微信返回值内的sign进行验签操作
                System.out.println(play);
            } catch (Exception e) {
                log.info("报错信息" + e);
            }
        }
    
        @Test
        public void queryworkwxredpack() {
            //构建企业微信签名
            try {
                Map<String, String> paramsMap = new HashMap<>();
                //商户订单号
                paramsMap.put("mch_billno", "");
                //商户号
                paramsMap.put("mch_id", "");
                //随机字符串
                paramsMap.put("nonce_str", ScrmStrinUtils.generateNonceStr());
                //公众账号appid
                paramsMap.put("appid", "");
               //构建微信支付签名 
                String key = "此处的key为微信商户平台的api密钥";
                String sign = ScrmStrinUtils.generateSignature(paramsMap, key, "wx");
                //微信支付签名
                paramsMap.put("sign", sign);
                String play = sendRedPacketService.queryworkwxredpack(ScrmStrinUtils.mapToXml(paramsMap));
                System.out.println(play);
            } catch (Exception e) {
                log.info("报错信息" + e);
            }
        }
    }
    

    ​SendRedPacketService:

    package com.cth.src.work.weComService;
    
    import com.cth.src.work.config.WebbankConfiguration;
    import org.springframework.cloud.openfeign.FeignClient;
    import org.springframework.http.MediaType;
    import org.springframework.web.bind.annotation.PostMapping;
    import org.springframework.web.bind.annotation.RequestBody;
    
    /**
     * @author chengtonghua
     * @date 2020-11-18
     *此处是思想是将企业微信作为一个的单独微服务,使用Feign的方式进行调用。
     * WebbankConfiguration 作为发送红包接口的一个config配置,里面在请求中注入了企业微信请求需要的证书信息
     */
    @FeignClient(name = "weComService", url = "https://api.mch.weixin.qq.com/mmpaymkttransfers", contextId = "sendService",configuration = WebbankConfiguration.class)
    public interface SendRedPacketService {
    
        /**
         * 调用企业微信红包接口
         * @param play
         * @return
         */
        @PostMapping(value = "/sendworkwxredpack", consumes = MediaType.APPLICATION_XML_VALUE, produces = MediaType.APPLICATION_XML_VALUE)
        String sendworkwxredpack(@RequestBody String play);
    
        /**
         * 查询红包记录
         * @param play
         * @return
         */
        @PostMapping(value = "/queryworkwxredpack", consumes = MediaType.APPLICATION_XML_VALUE, produces = MediaType.APPLICATION_XML_VALUE)
        String queryworkwxredpack(@RequestBody String play);
    }
    

    ScrmStrinUtils:

    package com.cth.src.work.utils;
    
    import org.w3c.dom.Document;
    
    import javax.xml.XMLConstants;
    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.DocumentBuilderFactory;
    import javax.xml.parsers.ParserConfigurationException;
    import javax.xml.transform.OutputKeys;
    import javax.xml.transform.Transformer;
    import javax.xml.transform.TransformerFactory;
    import javax.xml.transform.dom.DOMSource;
    import javax.xml.transform.stream.StreamResult;
    import java.io.StringWriter;
    import java.security.MessageDigest;
    import java.security.SecureRandom;
    import java.util.Arrays;
    import java.util.Map;
    import java.util.Random;
    import java.util.Set;
    
    /**
     * @author chengtonghua
     * @date 2020-11-17
     */
    public class ScrmStrinUtils {
    
        private static final String SYMBOLS = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
    
        private static final Random RANDOM = new SecureRandom();
    
        /**
         * 获取随机字符串 Nonce Str
         *
         * @return String 随机字符串
         */
        public static String generateNonceStr() {
            char[] nonceChars = new char[32];
            for (int index = 0; index < nonceChars.length; ++index) {
                nonceChars[index] = SYMBOLS.charAt(RANDOM.nextInt(SYMBOLS.length()));
            }
            return new String(nonceChars);
        }
    
    
        /**
         * 生成签名
         * @param data 待签名数据
         * @param key API密钥
         * @return 签名
         */
        public static String generateSignature(final Map<String, String> data, String key,String type) throws Exception {
            Set<String> keySet = data.keySet();
            String[] keyArray = keySet.toArray(new String[keySet.size()]);
            Arrays.sort(keyArray);
            StringBuilder sb = new StringBuilder();
            for (String k : keyArray) {
                if (k.equals("sign")) {
                    continue;
                }
                if (data.get(k).trim().length() > 0) {
                    // 参数值为空,则不参与签名
                    sb.append(k).append("=").append(data.get(k).trim()).append("&");
                }
            }
            if("wx".equals(type)){
                sb.append("key=").append(key);
            }else{
                sb.append("secret=").append(key);
            }
            String sign;
            try {
                sign = MD5(sb.toString()).toUpperCase();
            }catch (Exception e){
                throw new Exception(String.format("Invalid sign_type: %s", e));
            }
            return sign;
        }
    
        /**
         * 生成 MD5
         *
         * @param data 待处理数据
         * @return MD5结果
         */
        public static String MD5(String data) throws Exception {
            MessageDigest md = MessageDigest.getInstance("MD5");
            byte[] array = md.digest(data.getBytes("UTF-8"));
            StringBuilder sb = new StringBuilder();
            for (byte item : array) {
                sb.append(Integer.toHexString((item & 0xFF) | 0x100).substring(1, 3));
            }
            return sb.toString().toUpperCase();
        }
    
        /**
         * 将Map转换为XML格式的字符串
         *
         * @param data Map类型数据
         * @return XML格式的字符串
         * @throws Exception
         */
        public static String mapToXml(Map<String, String> data) throws Exception {
            Document document = newDocument();
            org.w3c.dom.Element root = document.createElement("xml");
            document.appendChild(root);
            for (String key: data.keySet()) {
                String value = data.get(key);
                if (value == null) {
                    value = "";
                }
                value = value.trim();
                org.w3c.dom.Element filed = document.createElement(key);
                filed.appendChild(document.createTextNode(value));
                root.appendChild(filed);
            }
            TransformerFactory tf = TransformerFactory.newInstance();
            Transformer transformer = tf.newTransformer();
            DOMSource source = new DOMSource(document);
            transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
            transformer.setOutputProperty(OutputKeys.INDENT, "yes");
            StringWriter writer = new StringWriter();
            StreamResult result = new StreamResult(writer);
            transformer.transform(source, result);
            String output = writer.getBuffer().toString(); //.replaceAll("\n|\r", "");
            try {
                writer.close();
            }
            catch (Exception ex) {
            }
            return output;
        }
    
        public static DocumentBuilder newDocumentBuilder() throws ParserConfigurationException {
            DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
            documentBuilderFactory.setFeature("http://apache.org/xml/features/disallow-doctype-decl", true);
            documentBuilderFactory.setFeature("http://xml.org/sax/features/external-general-entities", false);
            documentBuilderFactory.setFeature("http://xml.org/sax/features/external-parameter-entities", false);
            documentBuilderFactory.setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd", false);
            documentBuilderFactory.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true);
            documentBuilderFactory.setXIncludeAware(false);
            documentBuilderFactory.setExpandEntityReferences(false);
    
            return documentBuilderFactory.newDocumentBuilder();
        }
    
        public static Document newDocument() throws ParserConfigurationException {
            return newDocumentBuilder().newDocument();
        }
    }
    

    WebbankConfiguration:

    package com.cth.src.work.config;
    
    import feign.Client;
    import lombok.extern.slf4j.Slf4j;
    import org.apache.http.conn.ssl.NoopHostnameVerifier;
    import org.apache.http.ssl.SSLContexts;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.core.io.ClassPathResource;
    
    import javax.net.ssl.SSLContext;
    import javax.net.ssl.SSLSocketFactory;
    import java.io.FileInputStream;
    import java.security.*;
    
    
    @Configuration
    @Slf4j
    public class WebbankConfiguration {
    
        @Bean
        public Client feignClient() throws Exception {
            Client trustSSLSockets = new Client.Default(getSSLSocketFactory(), new NoopHostnameVerifier());
            log.info("feignClient called");
            return trustSSLSockets;
        }
    
    
        //增加SSL
        public static SSLSocketFactory getSSLSocketFactory() throws Exception {
            //TODO Exception 需要抛出异常
            //商户id,证书的默认密码
            String mchId = "";
            KeyStore keyStore  = KeyStore.getInstance("PKCS12");
           //本地证书
            ClassPathResource resource = new ClassPathResource("微信支付需要的证书路径");
            FileInputStream instream = new FileInputStream(resource.getFile());
            keyStore.load(instream, mchId.toCharArray());
            SSLContext sslContext = null;
            try {
                sslContext = SSLContexts.custom().loadKeyMaterial(keyStore, mchId.toCharArray()).build();
            } catch (NoSuchAlgorithmException e) {
                e.printStackTrace();
            } catch (KeyManagementException e) {
                e.printStackTrace();
            } catch (KeyStoreException e) {
                e.printStackTrace();
            } catch (UnrecoverableKeyException e) {
                e.printStackTrace();
            }
            return sslContext.getSocketFactory();
        }
    }
    

    常见错误处理:

    1. 签名错误,这个错误最经常出现,但是呢情况很多所以不容易排查。这个时候就需要按照官方文档内的要求核对参数的顺序以及数量。
      1. 企业微信的签名一定要在微信支付签名之前执行,因为企业微信签名需要参与到微信支付的签名中去。(api地址:https://work.weixin.qq.com/api/doc/90000/90135/90281
      2. wxappid是微信商户平台的appID
      3. 企业微信签名所使用的Secret是来源于企业微信应用中的企业支付应用的Secret
      4. 微信支付签名中使用的key为微信商户平台api设置中的key值
      5. 商户平台的证书和密码是否正确
    2. 签名的处理
      1.    根据接口不同固定使用以下字段即可,千万不要删除或者增加字段,否则会报签名失败
        企业微信签名字段说明:
        发红包api固定如下几个字段参与签名:
        act_name
        mch_billno
        mch_id
        nonce_str
        re_openid
        total_amount
        wxappid
        
        付款api固定如下几个字段参与签名:
        amount
        appid
        desc
        mch_id
        nonce_str
        openid
        partner_trade_no
        ww_msg_type

         

    3. 关键参数来源截图
      1. 企业微信参与签名的应用secret和应用ID

     

             3. 微信商户平台的appid

                  登录商户平台后->产品中心->AppID账号管理中即可看到。

            4. 微信支付key以及证书(需要注意的是:key一旦获取后需要妥善保存)

                          

    补充一个比较狗的但是能在企业微信外部联系人群发送红包的方法:就是创建了一个外部联系人群之后,你把自己的微信账号也拉入群中,这样你自己就可以在微信客户端发送客户群红包了,产生的消费可以自己找公司财务报销。

    展开全文
  • 打开微信钱包——选择微信红包。如图所示:2.选择普通红包,如图所示:3.将红包的数量设置为100个(必须是100个),然后看看你自己口袋里的单个数量。文案首先很重要,简短并突出主题。如图所示:4....

    大家好,我是林涛

    今天,我带我的朋友们通过实战演练来做“精推”。

    每个有经验的朋友一定都被今晚的红包雨吓到了。事实上,我还是不敢猛刷,否则会有更多的人害怕。

    现在让我们分享如何让红包雨更猛烈。

    直接转到步骤:

    1.打开微信钱包——选择微信红包。如图所示:

    2.选择普通红包,如图所示:

    3.将红包的数量设置为100个(必须是100个),然后看看你自己口袋里的单个数量。文案首先很重要,简短并突出主题。如图所示:

    4.确认付款,如图所示:

    5.发送一个红包,如图所示:

    6.分别选择发送多个联系人,如图所示:

    7.一次只能送100人,不能多也不能少,否则不会有红包雨!选择100个朋友后,点击完成,然后确认,如图所示:

    8.如果您选择发送,系统会提示您不能发送。重复一遍,然后发一次。由你来决定你想要多长时间。最后,实际上只收到了一个红包。如图所示:

    你学会了吗?一旦你学会了就去做,但我建议先派100人去,否则你会回复并杀死你。

    好的,这是微信红雨。你学会了吗?

    正是这种效果使红包来得更猛烈!哈哈!

    如果你觉得这个内容有趣,你可以和你的朋友分享,我相信他会欣赏你的。

    来源:灯塔,欢迎分享这篇文章!

    展开全文
  • 实现安卓企业微信红包助手

    万次阅读 2018-09-08 19:03:30
    APK包下载地址:企业微信红包助手_v1.8.0_9_release_2018_09_01_09_49_17.apk 安卓企业微信APP升级后会尽快适配最新版,如需了解源码和下载最新版APK,请移步项目Github。 红包助手功能看图更直观,红...

    实现企业微信抢红包助手

    项目Github地址https://github.com/chenyuebo/WeworkRedPacketHelper

    APK包下载地址企业微信红包助手_v1.8.0_9_release_2018_09_01_09_49_17.apk

    安卓企业微信APP升级后会尽快适配最新版,如需了解源码和下载最新版APK,请移步项目Github。

    红包助手功能看图更直观,红包助手APP截图如下:

    这里写图片描述

    这里写图片描述

    展开全文
  • 本文实例为大家分享了Android微信红包插件,供大家参考,具体内容如下效果图:具体代码@TargetApi(Build.VERSION_CODES.JELLY_BEAN)private void handleWindowChange(AccessibilityNodeInfo nodeInfo) {switch ...

    本文实例为大家分享了Android微信红包插件,供大家参考,具体内容如下

    效果图:

    43f2bb9f81e695db5198a6b2e987067c.png

    具体代码

    @TargetApi(Build.VERSION_CODES.JELLY_BEAN)

    private void handleWindowChange(AccessibilityNodeInfo nodeInfo) {

    switch (Stage.getInstance().getCurrentStage()) {

    case Stage.OPENING_STAGE:

    // 调试信息,打印TTL

    // Log.d("TTL", String.valueOf(ttl));

    /* 如果打开红包失败且还没到达最大尝试次数,重试 */

    if (openHongbao(nodeInfo) == -1 && ttl < MAX_TTL) return;

    ttl = 0;

    Stage.getInstance().entering(Stage.FETCHED_STAGE);

    performMyGlobalAction(GLOBAL_ACTION_BACK);

    if (nodesToFetch.size() == 0) handleWindowChange(nodeInfo);

    break;

    case Stage.OPENED_STAGE:

    ListsuccessNodes = nodeInfo.findAccessibilityNodeInfosByText("红包详情");

    if (successNodes.isEmpty() && ttl < MAX_TTL) {

    ttl += 1;

    return;

    }

    ttl = 0;

    Stage.getInstance().entering(Stage.FETCHED_STAGE);

    performMyGlobalAction(GLOBAL_ACTION_BACK);

    break;

    case Stage.FETCHED_STAGE:

    /* 先消灭待抢红包队列中的红包 */

    if (nodesToFetch.size() > 0) {

    /* 从最下面的红包开始戳 */

    AccessibilityNodeInfo node = nodesToFetch.remove(nodesToFetch.size() - 1);

    if (node.getParent() != null) {

    String id = getHongbaoHash(node);

    if (id == null) return;

    fetchedIdentifiers.add(id);

    // 调试信息,在每次打开红包后打印出已经获取的红包

    // Log.d("fetched", Arrays.toString(fetchedIdentifiers.toArray()));

    Stage.getInstance().entering(Stage.OPENING_STAGE);

    node.getParent().performAction(AccessibilityNodeInfo.ACTION_CLICK);

    }

    return;

    }

    Stage.getInstance().entering(Stage.FETCHING_STAGE);

    fetchHongbao(nodeInfo);

    Stage.getInstance().entering(Stage.FETCHED_STAGE);

    break;

    }

    }

    本文已被整理到了《Android微信开发教程汇总》,欢迎大家学习阅读。

    希望本文所述对大家实现微信红包功能有所帮助,帮助大家更好的学习Android软件编程。

    展开全文
  • 自动抢红包工具
  • 微信红包封面背后的秘密

    万次阅读 2020-01-21 08:18:00
    作者:TEDxPY 来源:TEDxPY今天在微信圈子里看到这么句话:“微信红包封面来了,又给开发者带来一个收入口!”有些好奇,没记错的话,去年不是已经有定制版微信红包封...
  • 微信红包源代码

    2015-10-17 17:42:49
    微信红包源代码
  • 企业微信支付是需要结合微信商户后台进行处理,有时候也需要设置好商户平台的相关处理,才能进行发送红包、支付到个人等等支付处理。本篇随笔介绍在企业微信的支付处理中的发送红包的操作相关内容。1、企业微信的...
  • 微信现金红包,是微信支付商户平台提供的营销工具之一,上线以来深受广大商户与用户的喜爱。商户可以通过本平台向微信支付用户发放现金红包。用户领取红包后,资金到达用户微信支付零钱账户,在日常运营中为商户的...
  • 微信红包插件

    千次阅读 2021-05-28 08:12:20
    微信红包插件这个Android插件可以帮助你在微信群聊抢红包时战无不胜。当检测到红包时,插件会自动点击屏幕,人工点击的速度无法比拟。实现原理1. 抢红包流程的逻辑控制这个插件通过一个Stage类来记录当前对应的...
  • 想了解下这个,企业微信红包是否有插件,不知道哪位大神能指点迷津
  • 微信企业红包 JAVA 实现

    热门讨论 2016-01-05 11:06:05
    微信高级接口 企业红包的 JAVA 实现 springMVC+Spring+Mybatis
  • 微盛·企微管家以微信红包为媒介,轻松发布红包活动,借助红包激励,让转发倍增,实现客户裂变增长。 红包引流配置流程 管理视角:渠道活码+抽红包欢迎语+自动标签+增长分析 设置活动渠道:针对此次活动创建个...
  • weixin, 微信裂变红包&微信红包接口&企业付款
  • 前言过年的时候总是少不了红包,不知从何时开始微信红包横空出世,对于网速和手速慢的人只能在一旁观望,做为python的学习者就是要运用编程解决生活和工作上的事情。于是我用python解决我们的手速问题python实现自动...
  • 微信红包插件这个Android插件可以帮助你在微信群聊抢红包时战无不胜。当检测到红包时,插件会自动点击屏幕,和人工点击的速度不可同日而语。你正在查看的是dev分支,这个分支仍在开发中,如果你希望有一个可以立即...
  • main方法,调用发红包接口 public static void main (String[] args) throws IOException{ String url="https://api.mch.weixin.qq.com/mmpaymkttransfers/sendredpack"; String wx_appid="wx1be1xxxxxxx"; ...
  • 提到抢红包,就不得不提Xposed框架,它简直是个抢红包的神器,但使用Xposed框架有一个前提条件:手机需要root,对于苹果手机的话就需要越狱了。现在的手机想要root或越狱并不容易,同时这会对手机安全性带来一些风险...
  • 有没有哪位大神有研究企业微信红包脚本的,联系我,有偿
  • 微信红包算法

    2018-03-30 14:40:06
    &lt;?.../** * Created by PhpStorm. * User: Administrator * Date: 2018/3/30 * Time: 10:42 */ $total = 100;...//红包总个数 ...//红包最小数金额,可定义 $arr = array_fill(0, $num, $min);/...
  • 监控或收集企业微信消息 自动消息推送 聊天机器人 通过企业微信远程控制你的设备 测试可以使用语言有C/C++,C#,易语言,Python, Java, Go, NodeJs, PHP, VB, Delphi。 目前支持的企业微信PC版本是3.0.27.2701, 使用...
  • 微信红包封面开放平台使用指南

    万次阅读 2020-01-09 18:24:06
    微信官方每年1月初都会举行一个公开课,将过去一年微信做的事情以及对未来的思考和规划跟大家做一个分享,在今年的公开课上,有别于以往的上线了一个全新并且独立的开放平台——微信红包封面开放平台。 1、什么是...
  • 1.微信红包数据架构演变 嘉宾:莫晓东 • 红包印象 • 2015春晚红包 • 2015新的挑战 • 2016再战春晚 12.红包映像 微信红包是什么? 微信红包是什么 包红包(支付) 发 抢 拆 2014年短短几天内快速上线的内部项目,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,459
精华内容 3,383
关键字:

企业微信红包