Подтвердить что ты не робот

PhoneGap - определение типа устройства в телефонной зазоре

Я создаю приложение в телефоне для трех разных платформ: Android, iOS и Blackberry. При этом мне нужно определить тип устройства, чтобы я мог управлять высотой и шириной моего приложения на разных платформах и для разных устройств, таких как Android Phone, Android Tablet, iPhone, iPad и Blackberry...

4b9b3361

Ответ 1

если вы хотите получить тип устройства до onDeviceReady, вы можете получить следующее:

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);

Ответ 2

Новое в Phonegap и самое простое - это то, что вы можете использовать device.platform:

// Depending on the device, a few examples are:
//   - "Android"
//   - "BlackBerry"
//   - "iOS"
//   - "webOS"
//   - "WinCE"
//   - "Tizen"
//   - "browser"
var devicePlatform = device.platform;

Ответ 3

cordova.platformId 
// "android"

Ответ 4

вы можете использовать свойство device.name, чтобы получить подробную информацию об устройстве.

    function onDeviceReady() {
    var name=device.name ;
       }

или получить только платформу, вы можете использовать свойство device.platform.

    function onDeviceReady() {
    var name=device.name ;
    var plat=device.platform;
       }

Ответ 5

используйте этот код как ur html файл

  Пример свойств устройства

<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>

  Загрузка свойств устройства...

Я предлагаю вам проверить это на устройстве Удачи Aamirkhan I.

Ответ 6

Вы можете посмотреть следующую ссылку: http://docs.phonegap.com/en/1.0.0/phonegap_device_device.md.html

Существует несколько способов получить информацию об устройстве из телефонной заставки.

Другой вариант - посмотреть тип браузера. (IE = WP7, Safari = iOS,...)

Я не уверен, сможете ли вы определить, находитесь ли вы на телефоне или планшете Android... В любом случае ваши html-приложения должны иметь возможность обрабатывать любое разрешение экрана. У вас также могут быть разные разрешения на телефонах!

Ответ 7

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;

}

Смотрите здесь device.platform

Ответ 8

Если вам нужна эта информация, потому что вы пытаетесь отформатировать экран правильно - вы должны использовать запросы CSS @media, чтобы определить соответствующий макет экрана и соответствующим образом применить CSS.

Используйте Google, чтобы найти информацию о "отзывчивом дизайне с CSS"

Ответ 9

i, конечно, НЕ использовать тип устройства при раскладке страницы, макет должен основываться только на размере экрана

вы можете использовать свойства javascript:

width = window.innerWidth
height = window.innerHeight

или используйте CSS:

.element{   
    height: 50vh;  //(height = 50 percent of screen)
}

см. vmin, vmax, vh, vw