Maison  >  Article  >  interface Web  >  Comment uniapp détermine-t-il s'il s'agit d'un mini-programme WeChat ou Alipay ?

Comment uniapp détermine-t-il s'il s'agit d'un mini-programme WeChat ou Alipay ?

PHPz
PHPzoriginal
2023-04-20 15:01:243419parcourir

Avec la popularité des mini-programmes WeChat et Alipay, de nombreux développeurs doivent prendre en charge deux mini-programmes dans une seule application en même temps. Au cours du processus de développement, différentes interfaces API doivent être appelées en fonction des différentes applets. À l'heure actuelle, comment déterminer si le mini-programme actuel est un mini-programme WeChat ou Alipay ? Cet article explique comment déterminer le type de l'applet actuelle dans uniapp.

uni.getSystemInfoSync() Obtenir des informations système

Dans uniapp, vous pouvez utiliser la méthode uni.getSystemInfoSync() pour obtenir les informations système de l'appareil actuel. Parmi eux, l'attribut système peut obtenir le nom du système d'exploitation actuel. Étant donné que le mini-programme WeChat est développé sur la base de WeChat et que le mini-programme Alipay est développé sur la base d'Alipay, les valeurs des attributs système des deux mini-programmes sont également différentes. La valeur système de l'applet WeChat est « iOS » ou « Android », tandis que la valeur système de l'applet Alipay est « iOS », « iPhone OS » ou « Android ».

Par conséquent, nous pouvons déterminer le type de l'applet actuelle en jugeant la valeur de l'attribut système. Dans le code uniapp, ce processus peut être réalisé via le code suivant :

if(uni.getSystemInfoSync().system.startsWith('iOS')) {
  // 如果是 iOS 系统
  if(uni.getSystemInfoSync().appName === 'APICloud') {
    // 如果是支付宝小程序
  } else {
    // 如果是微信小程序
  }
} else if(uni.getSystemInfoSync().system === 'Android') {
  // 如果是安卓系统
  if(uni.getSystemInfoSync().appName === 'APICloud') {
    // 如果是支付宝小程序
  } else {
    // 如果是微信小程序
  }
}

uni.getEnv() pour obtenir l'environnement d'exécution actuel

En plus de juger le type de l'applet actuelle via l'attribut système, vous pouvez également utiliser la méthode uni.getEnv() pour l'obtenir L'environnement d'exploitation actuel. La méthode uni.getEnv() renvoie un objet contenant trois attributs, qui sont :

  • platform : la plate-forme en cours d'exécution, qui peut être "devtools" pour indiquer qu'elle est en cours d'exécution dans les outils de développement ; elle peut être "h5" pour indiquer qu'elle est en cours d'exécution ; du côté H5 ; il peut être « android » ou « ios » pour indiquer l'exécution du côté APP.
  • app-plus : un objet contenant les attributs suivants :

    • name : nom de l'application, qui peut être "uni-app" ou "APICloud".
    • runtimeVersion : le numéro de version d'exécution de l'application actuelle.
    • versionName : numéro de version actuelle de l'application.
    • versionCode : numéro de version actuelle de l'application.
  • options : paramètres de démarrage, qui est un objet.

Nous pouvons déterminer l'environnement d'exécution actuel de l'applet en vérifiant la valeur de l'attribut platform. Dans l'environnement H5, la valeur de uni.getEnv().platform est « h5 » ; dans l'applet WeChat, la valeur de uni.getEnv().platform est « mp-weixin » ; dans l'applet Alipay, uni.getEnv ; La valeur de ().platform est "mp-alipay".

Par conséquent, nous pouvons utiliser le code suivant pour déterminer le type de l'applet actuelle :

if (uni.getEnv().platform === 'mp-weixin') {
  // 如果是微信小程序
} else if (uni.getEnv().platform === 'mp-alipay') {
  // 如果是支付宝小程序
}

Résumé

Cet article présente deux méthodes pour déterminer le type de l'applet actuelle dans uniapp, c'est-à-dire obtenir le système via l'uniapp Méthode .getSystemInfoSync() L'attribut système dans les informations et l'attribut plate-forme dans l'environnement d'exécution sont obtenus via la méthode uni.getEnv(). Les deux méthodes peuvent déterminer le type d'applet actuel et peuvent être sélectionnées en fonction des besoins réels. J'espère que cet article pourra apporter de l'aide aux développeurs d'Uniapp.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn