Android 内嵌vue代码APP调用小程序

在wxapi中的WXEntryActivity

/发送到微信请求的响应结果

@Override
public void onResp(BaseResp resp) {
    int result = 0;

    if (resp.getType() == ConstantsAPI.COMMAND_LAUNCH_WX_MINIPROGRAM) {
        WXLaunchMiniProgram.Resp launchMiniProResp = (WXLaunchMiniProgram.Resp) resp;
        String extraData =launchMiniProResp.extMsg; //对应小程序组件 <button open-type="launchApp"> 中的 app-parameter 属性
    }
    finish();
}

在MainActivity中

/**
 唤起微信小程序
 @username  填小程序原始id
 *@path  拉起小程序页面的可带参路径,不填默认拉起小程序首页
 @miniprogramType  miniprogramtype 0是正式 1是开发 2是体验版本
 */
public void BringUp(){
    String appId = WX_APP_ID; // 填应用AppId
    IWXAPI api = WXAPIFactory.createWXAPI(this, appId);

    WXLaunchMiniProgram.Req req = new WXLaunchMiniProgram.Req();
    req.userName = "gh_a3a55b54eefe"; // 填小程序原始id
    req.path = "pages/welcome/index?key=webview"; 拉起小程序页面的可带参路径,不填默认拉起小程序首页,对于小游戏,可以只传入 query 部分,来实现传参效果,如:传入 "?foo=bar"。
    req.miniprogramType = WXLaunchMiniProgram.Req.MINIPTOGRAM_TYPE_RELEASE;// 可选打开 开发版,体验版和正式版
    api.sendReq(req);
}

@JavascriptInterface
public void OnApp( ){
    BringUp();
}

在H5代码中调用

try {
        if (this.isAndroid) {
          this.$toast("发起授权");

          window.JsAnd.OnApp();
        } else {
          this.$toast("发起授权");
          window.webkit.messageHandlers.loginWx.postMessage({ value: 0 });
        }
      } catch (error) {
        this.$toast(error + "");
      }
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值