Je construis une application dans phonegap pour les trois plates-formes différentes: Android, iOS et Blackberry. Ce faisant, je dois détecter le type d'appareil pour pouvoir gérer la hauteur et la largeur de mon application sur différentes plates-formes et pour différents appareils comme Android Phone, Android Tablet, iPhone, iPad et Blackberry ...
si vous voulez obtenir le type de périphérique avant onDeviceReady, vous pouvez obtenir ceci.
var deviceType = (navigator.userAgent.match(/iPad/i)) == "iPad" ? "iPad" : (navigator.userAgent.match(/iPhone/i)) == "iPhone" ? "iPhone" : (navigator.userAgent.match(/Android/i)) == "Android" ? "Android" : (navigator.userAgent.match(/BlackBerry/i)) == "BlackBerry" ? "BlackBerry" : "null";
alert(deviceType);
La nouveauté de Phonegap, et la plus simple, est que vous pouvez utiliser le device.platform:
// Depending on the device, a few examples are:
// - "Android"
// - "BlackBerry"
// - "iOS"
// - "webOS"
// - "WinCE"
// - "Tizen"
// - "browser"
var devicePlatform = device.platform;
cordova.platformId
// "Android"
vous pouvez utiliser la propriété device.name pour obtenir des informations détaillées sur le périphérique.
function onDeviceReady() {
var name=device.name ;
}
ou pour obtenir uniquement la plate-forme, vous pouvez utiliser la propriété device.platform.
function onDeviceReady() {
var name=device.name ;
var plat=device.platform;
}
utiliser ce code comme ur fichier html
Exemple de propriétés de périphérique
<script type="text/javascript" charset="utf-8" src="phonegap-1.0.0.js"></script>
<script type="text/javascript" charset="utf-8">
// Wait for PhoneGap to load
//
document.addEventListener("deviceready", onDeviceReady, false);
// PhoneGap is ready
//
function onDeviceReady() {
var element = document.getElementById('deviceProperties');
element.innerHTML = 'Device Name: ' + device.name + '<br />' +
'Device PhoneGap: ' + device.phonegap + '<br />' +
'Device Platform: ' + device.platform + '<br />' +
'Device UUID: ' + device.uuid + '<br />' +
'Device Version: ' + device.version + '<br />';
}
</script>
Chargement des propriétés du périphérique ...
je vous suggère de vérifier cela dans deviceBest Of Luck Aamirkhan I.
Vous pouvez consulter le lien suivant: http://docs.phonegap.com/fr/1.0.0/phonegap_device_device.md.html
Il existe plusieurs méthodes pour obtenir des informations sur les appareils à partir de phonegap.
Une autre option consiste à examiner le type de navigateur . (IE = WP7, Safari = iOS, ...)
Je ne sais pas si vous serez capable de détecter si vous êtes sur un téléphone ou une tablette Android .... De toute façon, vos applications html devraient pouvoir prendre en charge toute résolution d'écran .. ... Vous pouvez avoir différentes résolutions à la les téléphones aussi!
Si vous avez besoin de ces informations parce que vous essayez de formater l'écran correctement, vous devez utiliser les requêtes CSS @media pour déterminer la disposition d'écran appropriée et appliquer CSS en conséquence.
Utilisez Google pour trouver des informations sur le "responsive design with CSS"
function onDeviceReady()
{
// ***IMPORTANT: access device object only AFTER "deviceready" event
document.getElementById("name").innerHTML = device.name;
document.getElementById("pgversion").innerHTML = device.cordova ? device.cordov:device.phonegap;
document.getElementById("platform").innerHTML = device.platform;
document.getElementById("uuid").innerHTML = device.uuid;
document.getElementById("version").innerHTML = device.version;
}
Voir ici pour device.platform