在 uni-app 中,获取当前运行平台的 API 是 uni.getSystemInfoSync().uniPlatform,它能帮助我们识别当前应用运行在哪个平台(如 H5、微信小程序、App 等),从而进行条件编译或差异化逻辑处理。
在这里插入图片描述


✅ 一、完整使用示例

🧩 示例代码:

export default {
  mounted() {
    this.checkPlatform();
  },
  methods: {
    checkPlatform() {
      const systemInfo = uni.getSystemInfoSync();
      const platform = systemInfo.uniPlatform; // 获取当前平台标识
      console.log('当前平台标识:', platform);

      switch (platform) {
        case 'app-plus':
          console.log('当前运行在 App 环境');
          break;
        case 'h5':
          console.log('当前运行在 H5 环境');
          break;
        case 'mp-weixin':
          console.log('当前运行在 微信小程序 环境');
          break;
        case 'mp-alipay':
          console.log('当前运行在 支付宝小程序 环境');
          break;
        case 'mp-baidu':
          console.log('当前运行在 百度小程序 环境');
          break;
        case 'mp-toutiao':
          console.log('当前运行在 抖音/头条小程序 环境');
          break;
        case 'mp-qq':
          console.log('当前运行在 QQ 小程序 环境');
          break;
        case 'mp-kuaishou':
          console.log('当前运行在 快手小程序 环境');
          break;
        case 'mp-lark':
          console.log('当前运行在 飞书小程序 环境');
          break;
        case 'mp-jd':
          console.log('当前运行在 京东小程序 环境');
          break;
        case 'mp-360':
          console.log('当前运行在 360 小程序 环境');
          break;
        case 'quickapp-webview':
          console.log('当前运行在 快应用 环境');
          break;
        default:
          console.log('未知环境:', platform);
      }
    }
  }
}

📊 二、不同平台对应的 uniPlatform 值及输出说明

平台名称uni.getSystemInfoSync().uniPlatform 返回值说明
App(5+ App)app-plus包括 Android 和 iOS 应用
H5h5浏览器环境,包括 PC 和移动端浏览器
微信小程序mp-weixin包括微信公众号内嵌页和独立小程序
支付宝小程序mp-alipay支付宝生态中的小程序
百度小程序mp-baidu百度智能小程序
抖音/头条小程序mp-toutiao字节跳动系小程序
QQ 小程序mp-qq腾讯系 QQ 内部小程序
快手小程序mp-kuaishou快手生态小程序
飞书小程序mp-lark飞书开放平台小程序
京东小程序mp-jd京东 APP 内小程序
360 小程序mp-360360 智能生态小程序
快应用quickapp-webview快应用标准框架(华为、小米等厂商支持)

📋 三、总结表格

运行环境uniPlatform 值对应平台
App(Android/iOS)app-plus5+ App
H5 页面h5浏览器环境
微信小程序mp-weixin微信生态
支付宝小程序mp-alipay支付宝生态
百度小程序mp-baidu百度生态
头条/抖音小程序mp-toutiao字节跳动生态
QQ 小程序mp-qqQQ 生态
快手小程序mp-kuaishou快手生态
飞书小程序mp-lark飞书生态
京东小程序mp-jd京东生态
360 小程序mp-360360 生态
快应用(通用)quickapp-webview华为、小米等快应用平台

🧠 四、应用场景建议

  • UI 差异适配:不同平台样式表现不一致时,可做平台判断。
  • API 差异调用:某些 API 在部分平台不可用,需根据平台动态选择。
  • 埋点统计:区分用户访问来源,便于数据分析。
  • 插件调用:部分原生插件只适用于 App 或特定平台。
  • 调试输出:开发阶段根据不同平台打印日志或提示信息。

如需结合 #ifdef 条件编译实现更灵活的多端兼容策略,也可以参考我之前的回答中关于扩展机制的部分。需要具体场景案例欢迎继续提问!

更多推荐