PhoneGap is een raamwerk voor de ontwikkeling van de platformonafhankelijke op HTML/JavaScript, voor zeven mobiele platforms. Vandaag kan men lezen van een groot aantal artikelen gewijd aan PhoneGap, geschreven door inheemse ontwikkelaars, die uitgeprobeerd platformonafhankelijke programmering, of front-end-ontwikkelaars, die uitgeprobeerd mobiele ontwikkeling. Hun beoordeling van hoe goed of slecht PhoneGap is, wordt beïnvloed door hun oorspronkelijke veld van activiteiten; Daarom PhoneGap heet 'cool' of 'gebrekkig'.
Maar er zijn ontwikkelaars die hun activiteiten uitsluitend gewijd aan PhoneGap ontwikkeling, en hebben zij de subtiliteiten van dit kader van cross-platform. Er is geen universele oplossing, noch in inheemse ontwikkeling, noch in cross-platform ontwikkeling. Alles hangt af van de softwareproject; en deze subtiliteiten kunnen helpen beslissen of PhoneGap moet worden gekozen als het platform voor het project.
De platformonafhankelijke mogelijkheden van PhoneGap worden bereikt op de volgende wijze: een inheemse project is gegenereerd, onderscheidende voor elk platform, waaronder een browser (native webView component) als de belangrijkste component. Deze browser is in staat om weer te geven HTML/JavaScript-code als een gewone webpagina. Het bestandssysteem voor dit project fungeert het deel van een file server, die toegang tot de pagina geeft. Als extra bonus is er een object waarmee PhoneGap op de standaardisering van de toegang tot de ingebouwde functies van mobiele apparaten met de ondersteunde besturingssystemen, zoals camera, kompas, versnellingsmeter, contacten enz.
Als de standaard API niet genoeg is, zal PhoeGap Plugin API toelaten om het schrijven van een code, die de ontbrekende functionaliteit implementeert. Deze code is geschreven op de inheemse programmeertaal, die specifiek is voor elke eigenaardige platform.
Kortom, een PhoneGap project bevat vier functionele onderdelen, die zorgen voor de uitvoering van de HTML/JavaScript-code:
1) een native browser (webView), ingebed in het project;
2) gestructureerde API voor toegang tot de normale functies van een mobiel apparaat uit JavaScript-code;
3) API voor het schrijven van inheemse plugins;
4) bestand opslag, waarmee HTML, JavaScript en andere Webmiddelen van de toepassing bevat.
PhoneGap kunt zo om een service-oriented, single-pagina HTML-5-applicatie te bouwen.
99% van PhoneGap ontwikkeling is schermopmaak en JS-codering met aandacht voor het milieu eigenaardigheden (een mobiel apparaat, beperkte verwerking vermogen, geheugen, touchscreen enz.) en browsers. Tijdens PhoneGap moet ontwikkeling een overwegen de specificiteit van elk platform, zijn standaardbrowser (die heeft webView er op gebaseerd). PhoneGap eist, als het gaat om het platform en optimalisatie. User interface moet worden geoptimaliseerd voor elk platform; Daarom geven de doelplatformen zal van invloed zijn op de tijd besteed aan het project.
Wij hebben eerder de kwestie van PhoneGap aangestipt, en vier grote problemen terwijl de bouw van een responsieve app op PhoneGap geschetst: de 300 milliseconden lag, het probleem van aanraken, DOM structuur optimalisatie en lange lijsten. En wij hebben oplossingen voor deze problemen voorgesteld. Dus tot wij een conclusie gekomen dat de zwakke punten van PhoneGap in principe technische kenmerken zijn, moeten als zodanig worden behandeld.
Tot slot, zijn hier enkele nuttige tips over PhoneGap ontwikkeling - Bespaar tijd en Vermijd frustratie.
1) De minder externe bibliotheken worden gebruikt, hoe beter. Het gaat om de beperkte middelen van een mobiel apparaat. Het is dicht bij een vloot van schepen te voeren één enkele doos (de businesscase van de toepassing). De brandstof zal worden verbruikt door de hele vloot. Kies bibliotheken zorgvuldig en proberen om volledig gebruik maken van hun mogelijkheden;
2) De app hoeft niet op dezelfde manier op alle platforms en OS versies. Het is beter om een trade-off in stijl en het uiterlijk van een app, zodat de snelheid en functionaliteit intact;
3) Gebruik CSS achtergrond afbeeldingen; weergeven Daarom zal een afbeelding worden geladen alleen als een element van de lijst wordt weergegeven op het scherm;
4) De optimalisatie-methoden, toepassing voor webpagina's met client / server-architectuur, zijn niet altijd de beste oplossing voor een PhoneGap toepassing. Er zijn geen lange netwerkaanvragen voor het laden van HTML/JS/CSS-bestanden, dus er geen behoefte is in het gezien de omvang van een JavaScript-bestand, of bijvoorbeeld in minimalisering van onzichtbare pixels in een afbeelding. Kies een manier om te gaan met de onvermijdelijke 250 milliseconden vertraging voordat een bestand wordt geladen; onze keuze was lui preloading en tegels;
5) Plaats invoervelden weer aan de bovenkant van het scherm - dus u zult vermijden verschillen in gedrag van de pagina-indeling tijdens het weergeven van het toetsenbord;
6) Lange lijsten zijn een probleem dat moet worden vermeden - tenzij u een oplossing hebt;
7) Vermijd tinten, verlopen en doorschijnendheid, waar mogelijk. Deze opschik vereist extra macht, dat is waarom gebruiken indien nodig.
8) Gebruiken de kracht van de graphics processing unit via CSS.