用小程序提供的wx.miniProgram.getEnv可以獲取環境參數,但是它有個問題就是無法在非微信環境下判斷。所以在使用wx.miniProgram.getEnv前得先判斷是否在微信環境中。
解決方法:
<script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.3.2.js"></script> <script> var ua = navigator.userAgent.toLowerCase(); if(ua.match(/MicroMessenger/i)=="micromessenger") { //ios的ua中無miniProgram,但都有MicroMessenger(表示是微信瀏覽器) wx.miniProgram.getEnv((res)=>{ if (res.miniprogram) { alert("在小程序里"); } else { alert("不在小程序里"); } }) }else{ alert('不在微信里'); } </script>
解決完成,iOS 和 Android都沒問題,親測有效!!!