Identificare se un'applicazione Cordova gira nell'emulatore

Identificare se un'applicazione Cordova gira nell'emulatore

Ci sono delle volte in cui serve far capire alla app se sta girando in un emulatore o meno; soprattutto per il debug o nel caso di uso di device fotografici (fotocamera, video, ecc).

Oggi vediamo come identificare se siamo in un emulatore nel caso di una app scritta con Apache Cordova.

Identificare questa cosa, in verità, è molto semplice usando il plugin cordova-plugin-device.

Una volta che avete installato il plugin, basta controllare la proprietà isVirtual.

Un esempio molto comune che si trova in giro riguarda proprio la fotocamera:

var st = device.isVirtual ? Camera.PictureSourceType.PHOTOLIBRARY:Camera.PictureSourceType.CAMERA;
     
navigator.camera.getPicture(success, error, {
    sourceType: st,
    destinationType:Camera.DestinationType.FILE_URI
});

In pratica controlliamo se il device è virtuale, e in base a questo impostiamo il sourceType.

Enjoy!