web-dev-qa-db-fra.com

Comment détecter l'iPhone X (Ionic - Cordova App)

Je dois apporter des modifications à mon application, mais uniquement pour l'iPhone X.

L'application est basée sur Apache Cordova (avec Ionic framework).

Existe-t-il un plugin cordova pour détecter l'iPhone X? Si la réponse est non, quelle est la meilleure méthode pour savoir si l'utilisateur a un iPhone X en javascript?

Merci

13
Ernesto Schiavo

Vérifiez: var deviceInformation = ionic.Platform.device();

De Ionic bundle.js

/**
     * @ngdoc method
     * @name ionic.Platform#device
     * @description Return the current device (given by cordova).
     * @returns {object} The device object.
     */
    device: function() {
      return window.device || {};
    },

Vérifiez également cordova-plugin-device

Propriétés

device.cordova       // returns CDV_VERSION
 device.model
 device.platform     // always returns iOS
 device.uuid
 device.version
 device.manufacturer // always returns  Apple
 device.isVirtual    // not relevant
 device.serial 

Ce plugin appelle CDVDevice.m -> UIDevice donc si vous ne pouvez toujours pas récupérer iPhone X vaut la peine de trouver le moyen de le détecter dans Obj-C et de changer CDVDevice.m.


Vérifiez également ce contrôle qualité: les appareils iOS renvoient un modèle d'appareil de format différent, pourquoi?

5
Maxim Shoustin

Pour cordova

en utilisant cordova-plugin-device plugin comme ceci:

window.device.model

va donner:

iPhone10,3 ou iPhone10,6

Voir doc :

enter image description here

Pour navigateur

voir ce commentaire

3
Made in Moon

J'ai fait ce qui suit en utilisant la méthode intégrée ionic.Platform.device (). Je ne pense pas qu'il soit nécessaire d'installer un tout nouveau plugin si vous utilisez déjà ionic.

let model = ionic.Platform.device().model
$scope.deviceIphonex = model.includes('iPhone10')

Je peux ensuite l'utiliser n'importe où dans mon application et faire des choses spécifiquement pour l'iphone X.

1
IonicBurger