niedziela, 17 czerwca 2012

PhoneGap - odc. 2

W odc.2 dla PhoneGap - przegląd dostarczanego API oraz kwestie zdalnego buildu.

 

PhoneGap API

API

  • Akcelerometr
  • Camera (robienie zdjęć lub pobieranie ich z albumu)
  • Capture (audio, obraz, video)
  • Kompas
  • Connection (navigator.network)
  • Contacts
  • Device (niektóre informacje)
  • Zdarzenia (np. pause, resume, backbutton, searchbutton, …)
  • File (lokalny system plików)
  • Geolokalizacja (na bazie specyfikacji W3C)
  • Media (nagrywanie i odtwarzanie, w kierunku specyfikacji W3C dla media capture)
  • Notyfikacje
  • Storage (na bazie specyfikacji W3C  - W3C Web Storage i W3C Web SQL Database (sic!))

Device

//w obsłudze zdarzenia deviceready; device: name, phonegap, platform, uuid, version

$(‘#devicename’).html(device.name); 

Akcelerometr

var wId = navigator.accelerometer.watchAcceleration(onSuccess, onError, {frequency: 1000} );

function onSuccess(a) {

$(‘#aX’).html(a.x);  //współrzędna x

}

Odpowiednie zezwolenie w manifeście aplikacji

Camera

navigator.camera.getPicture(onSuccess, onError, { quality: 50,  destinationType:  Camera.DestinationType.FILE_URI });

function onSuccess(fileUri) {

$(‘#imageUri’).html(fileUri);

}

Geolokalizacja

navigator.geolocation(onSuccess, onError, { frequency: 1000 });

function onSuccess(p) {

$(‘#lat’).html(p.coords.latitude);

}

Notyfikacje

navigator.notification.alert(“Euro 2012!”, onSuccess, “Click”, “Ok”);

Storage

var db = window.openDatabase(“Database”, “1.0”, “MKS demo”, 200000);

db.transaction(populateDB, errorCB, successCB);

function populateDB(tx) {

tx.executeSql(‘INSERT INTO DEMO (id, data) VALUES (1, “First row”)’);

}

Pluginy PhoneGap

Możliwość opakowywania natywnego kodu

PhoneGap Build

aplikacja dla danej platformy –> PhoneGap Build w chmurze (developer za darmo, większe podmioty - opłaty co miesiąc) –> aplikacje na różne platformy

Folder www z projektu pakujemy do .zip i wysyłamy do chmury

Konfigurowanie buildu z poziomu strony lub poprzez plik config.xml (opis aplikacji wg. W3C widget specification)

Opcja Debug

Brak komentarzy: