11 判断平台

平台判断有 2 种场景,一种是在编译期判断,一种是在运行期判断。

  • 编译期判断 编译期判断,即条件编译,不同平台在编译出包后已经是不同的代码
    // #ifdef H5
    alert('只有h5平台才有alert方法');
    // #endif

如上代码只会编译到 H5 的发行包里,其他平台的包不会包含如上代码

  • 运行期判断 运行期判断是指代码已经打入包中,仍然需要在运行期判断平台,此时可使用 uni.getSystemInfoSync().platform 判断客户端环境是 Android、iOS 还是小程序开发工具(在百度小程序开发工具、微信小程序开发工具、支付宝小程序开发工具中使用 uni.getSystemInfoSync().platform 返回值均为 devtools)
    switch (uni.getSystemInfoSync().platform) {
    	case 'android':
    		console.log('运行Android上');
    		break;
    	case 'ios':
    		console.log('运行iOS上');
    		break;
    	default:
    		console.log('运行在开发者工具上');
    		break;
    }

如有必要,也可以在条件编译里自己定义一个变量,赋不同值。在后续运行代码中动态判断环境

Last Updated:
Contributors: leeguooooo