Inleiding tot PhoneGap-ontwikkeling

PhoneGap is een open source-framework voor het bouwen van platformonafhankelijke mobiele applicaties met HTML, CSS en JavaScript. Dit is een ideale oplossing voor webontwikkelaars die geïnteresseerd zijn in mobiele ontwikkeling, omdat het hen in staat stelt bestaande vaardigheden te gebruiken in plaats van met een apparaatspecifieke gecompileerde taal te beginnen. Dit is ook een ideale oplossing voor diegenen die geïnteresseerd zijn in het maken van een applicatie die op meerdere apparaten met dezelfde codebasis kan worden uitgevoerd. In deze tutorial leer je hoe je de ontwikkelomgeving van PhoneGap kunt instellen en wat van de fundamentele ontwikkelingsoverwegingen van het platform leert.

Introductie van PhoneGap

Toepassingen gebouwd met PhoneGap zijn niet alleen normale mobiele websites. PhoneGap-toepassingen kunnen communiceren met hardware van mobiele apparaten, zoals de versnellingsmeter of GPS, op manieren die niet beschikbaar zijn voor normale webtoepassingen. PhoneGap-applicaties zijn ook gebouwd en verpakt als native applicaties, wat betekent dat ze kunnen worden gedistribueerd via de Apple App Store of de Android Market.

PhoneGap ondersteunt een aantal verschillende mobiele platforms, waaronder:

  • Android
  • iPhone
  • braambes
  • Symbian
  • Palm

De PhoneGap SDK biedt een API die een abstractielaag is die de ontwikkelaar toegang biedt tot hardware- en platformspecifieke functies. Omdat PhoneGap het native mobiele platform abstract, kan dezelfde code op meerdere mobiele platforms worden gebruikt met weinig of geen wijzigingen, waardoor uw applicatie beschikbaar is voor een breder publiek.

Hardware-specifieke functies die worden ondersteund door de PhoneGap API omvatten:

  • Geolocation
  • vibratie
  • accelerometer
  • Geluid

Vereisten:

Om applicaties te maken met PhoneGap, moet u eerst de standaard SDK installeren voor de mobiele platforms die u wilt targeten voor uw app. Dit komt omdat PhoneGap deze SDK's daadwerkelijk zal gebruiken bij het compileren van uw app voor dat platform.

Dus, als u zich ontwikkelt voor Android, hebt u het volgende nodig:

  • Android NDK
  • Android SDK

Er zijn ook enkele aanvullende PhoenGap-specifieke vereisten voor Android-ontwikkeling, waaronder:

  • Eclipse IDE
  • ADT-plug-in voor Eclipse
  • Apache Ant
  • Robijn
  • Git Bash (alleen Windows)

De Android-documentatie van PhoneGap biedt de volledige lijst met vereisten met installatie-instructies voor elk.

Als je je ontwikkelt voor de iPhone, heb je nodig:

  • Een op intel gebaseerde Apple Computer
  • iPhone SDK
  • Xcode
  • Mac OS X Snow Leopard

Lees onze introductie tot iPhone Development handleiding voor meer informatie over het opzetten van een iPhone-ontwikkelomgeving.

Nadat je phonegap hebt gedownload en uitgepakt, zul je zien dat het een aparte map bevat voor elk platform dat wordt ondersteund door PhoneGap:

PhoneGap wordt geleverd met een standaardtoepassing die kan worden gebruikt om de krachtige functionaliteit van de SDK te demonstreren. De rest van deze tutorial zal gewijd zijn aan het tonen hoe je deze standaard app instelt voor zowel Android als iPhone.

De standaard PhoneGap-app voor Android bouwen

Om een ​​werkruimte te maken voor je PhoneGap-app op Android, ga je naar de map "phonegap-android" op de opdrachtprompt of terminal.

Voer de volgende opdracht uit:

  ruby ./droidgap "[android_sdk_path]" [naam] [pakketnaam] "[www]" "[pad]"
  • android_sdk_path - Pad waar je de Android SDK hebt geïnstalleerd.
  • naam - De naam om de nieuwe applicatie te geven.
  • verpakkingsnaam - De naam die u aan uw toepassing wilt geven.
  • www - De map waaruit u de bestanden van uw PhoneGap-app wilt kopiëren. Laat dit voorlopig leeg.
  • pad - De toepassingswerkruimte voor uw project.

Zodra deze opdracht met succes wordt uitgevoerd, wordt de toepassingswerkruimte gegenereerd in het pad dat u hebt gegeven. Vervolgens kunt u Eclipse openen en eerst "Nieuw Android-project" kiezen en vervolgens "Maken uit bestaande bron" kiezen en de werkruimte van de toepassing selecteren die met de vorige opdracht is gemaakt.

Als dat is gebeurd, kopieert u de volgende bestanden uit de map phonegap / phonegap-android / example naar de map www in uw werkruimte:

  • index.html
  • Master.css

Klik vervolgens op uitvoeren om de voorbeeldapp voor phonegap in de Android-simulator te bekijken.

De standaard PhoneGap-app voor de iPhone bouwen

Als u een PhoneGap-app voor de iPhone wilt maken, gaat u naar de map phonegap-iphone, waar u de PhoneGap-bestanden hebt uitgepakt.

Zodra u in die map in uw terminal bent, typt u 'make' om PhoneGapLibInstaller.pkg te bouwen.

Dan moet je PhoneGapLibInstaller.pkg gebruiken om de PhoneGapLib en de PhoneGap-sjabloon in Xcode te installeren.

Vervolgens kunt u Xcode starten en een 'Nieuw project' maken. Kies vervolgens een op PhoneGap gebaseerde applicatiesjabloon.

Kopieer vervolgens de volgende bestanden naar de map www van uw werkruimte:

  • index.html
  • Master.css

Start de applicatie om de demo PhoneGap-app in de iPhone Simulator te starten.

Achter de schermen (in code)

Dus nu heb je de demo PhoneGap-app die op je simulator draait. Je kunt met de app spelen en zien hoe het werkt. Deze basisapp toont algemeen gebruik van de verschillende API's die worden weergegeven
door de PhoneGap SDK.

Ga je gang en open index.htm. Bovenaan de pagina ziet u de volgende code:

 PhoneGap  

Het eerste is een link naar master.css die alle stijl geeft aan de knop die je op het scherm hebt gezien.

De tweede regel bevat phonegap.js die wordt gegenereerd wanneer we een werkruimte voor onze applicatie hebben gemaakt. Dit bestand doet al het magische van het aanroepen van de native API's via JavaScript.

Als u nu naar het einde van index.html scrolt, ziet u de volgende code:

  

Welkom bij PhoneGap!

dit bestand bevindt zich op assets / index.html

Platform:  

Versie:  

UUID:  

X:
 
Y:
 
Z:
 
Bekijk Accelerometer Locatie opvragen 411 Beep Trillen Krijg een foto Neem telefooncontacten

Deze HTML maakt de links die worden weergegeven als knoppen op het scherm van uw mobiele apparaat. Aan deze links zijn onclick-handlers gekoppeld die JavaScript-functies aanroepen die in hetzelfde bestand zijn gedefinieerd en die verantwoordelijk zijn voor het aanroepen van de PhoneGap API voor interactie met de oorspronkelijke hardware van het apparaat.

De eerste functie die in JavaScript moet worden aangeroepen, is init (). Dit zal onze JavaScript-functie registreren apparaat info naar het PhoneGap-evenement.

Deviceready Event

De deviceready het evenement wordt afgevuurd door PhoneGap wanneer alle SDK-componenten correct zijn opgeslagen. Het is dan logisch dat de JavaScript-API's van PhoneGap worden gebruikt nadat dit evenement is gestart.

U kunt meer lezen over deviceready in de API-documentatie.

Device Object

Het apparaatobject bevat basisinformatie over het apparaat waarop de app wordt uitgevoerd, zoals het platform, de versie enz. Deze waarden kunnen worden gebruikt om apparaatspecifieke controles uit te voeren in uw code.

U kunt meer lezen over het apparaatobject in de officiële API-documentatie.

accelerometer

De eerste link in het lichaam roept de watchAccel-functie aan:

 Bekijk Accelerometer

Dit gedeelte van de API kijkt en verzendt regelmatig meldingen over apparaatversnelling. Het retourneert de huidige versnelling van het apparaat door de x-, y- en z-coördinaten door te geven aan de callBackonSuccess functie geregistreerd. De x, y, z-waarden kunnen vervolgens in de toepassing worden gebruikt om op beweging te reageren.

Lees hier meer over de accelerometer.

GPS & Positionering

De tweede link in het lichaam is verantwoordelijk voor het verzamelen van de huidige apparaatlocatie:

 Locatie ophalen

De callBackonSuccessfunctie wordt een object doorgegeven dat de GPS-coördinaten bevat die kunnen worden gebruikt in uw toepassing om locatiegebaseerde verwerking uit te voeren.

U kunt meer lezen over de Geolocation-API.

Telefoneren

De derde regel in de body start de dialer van het apparaat met het nummer "411":

 Bel 411

Apparaatmeldingen

De volgende twee lijnen in het lichaam worden gebruikt om een ​​apparaat te laten piepen of trillen:

 Beep Vibrate

Lees meer over piepen en trillen in de officiële documenten.

De camera gebruiken

De volgende regel in het lichaam roept de functie aan show_pic een foto nemen:

 Krijg een foto

Dit api start de camera-applicatie van het apparaat en wacht
voor gebruikers om een ​​afbeelding te nemen.

Lees meer over het maken van foto's in de officiële API-documentatie.

Conclusie

PhoneGap is een zeer krachtig raamwerk voor platformonafhankelijke ontwikkeling. Als je al een sterke achtergrond hebt voor webontwikkeling en geïnteresseerd bent in het bouwen van apps voor een of meer apparaten, is PhoneGap zeker een sterke kanshebber om te overwegen!