从网页调起scan QR code时,Android正常,iOS无效。


1、从网页引入小程序SDK jweixin-1.3.2.js,并通过webview组件调起小程序page。

webview.html 代码片段

$("body").on('click', '.qrcode-scan', function () {

    console.log('webview scan QR code');


    wx.miniProgram.navigateTo({

        url: '/pages/scan-code/scan-code'

    });

});


2、scan-code.wxml page,仅放1行代码即可。

scan-code.wxml 代码片段

<web-view src="{{url}}"></web-view>


3、scan-code.js,处理逻辑。

scan-code.js 代码片段

const webviewUrl = require('../../config').webviewUrl

Page({

  data: {

    url: webviewUrl + '#wechat_redirect'

  },

  onLoad: function (options) {

    var that = this

    wx.scanCode({

      onlyFromCamera: true,

      scanType: ['qrCode'],

      success: function(res) {

        console.log('scan QR code successful.')

        that.setData({

          url: webviewUrl + '?q=' + encodeURIComponent(res.result) + '#wechat_redirect'

        })

      },

      fail: function(res) {

        console.log('scan QR code failed.')

      }

    })

  }

})


在 Android 小程序真机上运行时调起微信扫码正常,在iOS小程序真机上运行时调起扫码可以跳到 scan-code.wxml 页面,但是无法调起微信扫码(模拟器下iPhone 7 Plus是正常的)。

展开全部
收起
0回答
提交回答
  • 至过去的我

    2044人对此回答表示赞同

    我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多>
    发布于
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
咨询热线

13312967497

扫码添加业务即可随时咨询 还可领取小程序推广攻略

业务咨询: 13312967497
扫码咨询

扫码咨询套餐

回到顶部