JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 73
  • Score
    100M100P100Q79982F
  • License MIT

A cordova plugin, a JS version of Wechat SDK

Package Exports

    This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (cordova-plugin-wechat) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

    Readme

    Active Downloads version

    重要说明

    Due to the security upgrade of iOS 13 system version, the official WeChat SDK has been adapted from 1.8.6 with supports * Universal Links * mode jumps, and the validity check when sharing.

    From version 3.0.0 of our plugin, we changed to the latest WeChat SDK. Before using it, you need to configure the Universal Links service, and pay attention to passing the universallink variable when installing the plugin, otherwise it will not work properly.

    If you don't want to use the new version features, you can fall back to version 3.0.0 prior

    cordova-plugin-wechat

    A cordova plugin, a JS version of Wechat SDK

    Feature

    • check wechat client is installed;
    • Share text, image, link,music,video,miniprogram to wechat timeline,session or favorite;
    • open wechat auth;
    • send wechat payment request;
    • open wechat miniprogram;
    • listener wx-open-launch-app event;

    Documentation

    文档 · 教程 · FAQ · DEMO

    Install

    cordova plugin add cordova-plugin-wechat  --variable wechatappid=YOUR_WECHAT_APPID --variable universallink=YOUR_UNIVERSAL_LINK
    cordova build ios
    cordova build android

    Usage

    Check if wechat is installed

    Wechat.isInstalled(function (installed) {
        alert("Wechat installed: " + (installed ? "Yes" : "No"));
    }, function (reason) {
        alert("Failed: " + reason);
    });

    Authenticate using Wechat

    var scope = "snsapi_userinfo",
        state = "_" + (+new Date());
    Wechat.auth(scope, state, function (response) {
        // you may use response.code to get the access token.
        alert(JSON.stringify(response));
    }, function (reason) {
        alert("Failed: " + reason);
    });

    Share text

    Wechat.share({
        text: "This is just a plain string",
        scene: Wechat.Scene.TIMELINE   // share to Timeline
    }, function () {
        alert("Success");
    }, function (reason) {
        alert("Failed: " + reason);
    });
    Wechat.share({
        message: {
            title: "Hi, there",
            description: "This is description.",
            thumb: "www/img/thumbnail.png",
            mediaTagName: "TEST-TAG-001",
            messageExt: "这是第三方带的测试字段",
            messageAction: "<action>dotalist</action>",
            media: "YOUR_MEDIA_OBJECT_HERE"
        },
        scene: Wechat.Scene.TIMELINE   // share to Timeline
    }, function () {
        alert("Success");
    }, function (reason) {
        alert("Failed: " + reason);
    });
    Wechat.share({
        message: {
            ...
            media: {
                type: Wechat.Type.WEBPAGE,
                webpageUrl: "http://www.jason-z.com"
            }
        },
        scene: Wechat.Scene.TIMELINE   // share to Timeline
    }, function () {
        alert("Success");
    }, function (reason) {
        alert("Failed: " + reason);
    });

    Share mini program

    Wechat.share({
        message: {
            ...
            media: {
                type: Wechat.Type.MINI,
                webpageUrl: "https://www.jason-z.com", // 兼容低版本的网页链接
                userName: "wxxxxxxxx", // 小程序原始id
                path: "user/info", // 小程序的页面路径
                hdImageData: "http://wwww.xxx.com/xx.jpg", // 程序新版本的预览图二进制数据 不超过128kb 支持 地址 base64 temp
                withShareTicket: true, // 是否使用带shareTicket的分享
                miniprogramType: Wechat.Mini.RELEASE 
            }
        },
        scene: Wechat.Scene.SESSION   // 小程序仅支持聊天界面
    }, function () {
        alert("Success");
    }, function (reason) {
        alert("Failed: " + reason);
    });

    Send payment request

    // See https://github.com/xu-li/cordova-plugin-wechat-example/blob/master/server/payment_demo.php for php demo
    var params = {
        partnerid: '10000100', // merchant id
        prepayid: 'wx201411101639507cbf6ffd8b0779950874', // prepay id
        noncestr: '1add1a30ac87aa2db72f57a2375d8fec', // nonce
        timestamp: '1439531364', // timestamp
        sign: '0CB01533B8C1EF103065174F50BCA001', // signed string
    };
    
    Wechat.sendPaymentRequest(params, function () {
        alert("Success");
    }, function (reason) {
        alert("Failed: " + reason);
    });

    Choose invoices from card list

    //offical doc https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1496561749_f7T6D
    var params = {
        timeStamp: '1510198391', // timeStamp
        signType: 'SHA1', // sign type
        cardSign: 'dff450eeeed08120159d285e79737173aec3df94', // cardSign
        nonceStr: '5598190f-5fb3-4bff-8314-fd189ab4e4b8', // nonce
    };
    
    Wechat.chooseInvoiceFromWX(params,function(data){
        console.log(data);
    },function(){
        alert('error');
    })

    open wechat mini program

    //offical doc https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=21526646437Y6nEC&token=&lang=zh_CN
    var params = {
        userName: 'gh_d43f693ca31f', // userName
        path: 'pages/index/index?name1=key1&name2=key2', // open mini program page
        miniprogramType: Wechat.Mini.RELEASE // Developer version, trial version, and official version are available for selection
    };
    
    Wechat.openMiniProgram(params,function(data){
        console.log(data); // data:{extMsg:""}  extMsg: Corresponds to the app-parameter attribute in the Mini Program component <button open-type="launchApp">
    },function(){
        alert('error');
    })

    wx-open-launch-app event

    Wechat.isInstalled((installed) => {
      if (!installed) return
      document.addEventListener(
        'wechat.launchFromWX',
        ({ extinfo }) => {
          console.log('launch from wechat extinfo = ', extinfo)
        },
        false
      )
    })

    more usage please see https://jasonz1987.github.io/cordova-wechat-docs/docs/usages

    Join us

    QQ群:190808518 cordova-wechat官方交流群

    Donate

    we need your support to improve open source software ,if we induce your develop time ,welcome to donate us.

    paypal

    donate.png

    LICENSE

    MIT LICENSE