Špeciálne skryté kódy pre smartfóny s Androidom. Tajné kódy pre Android - ako ovládať svoj vlastný gadget pomocou

  • 01.05.2019

Každý deň existuje viac a viac aplikácií pre Android. Na Play Markete nájdete milióny zaujímavých hier a užitočných programov. Všetky majú užívateľsky prívetivé rozhranie a zvládajú danú úlohu. Je ťažké si bez nich predstaviť moderný svet informačných technológií. Tento článok je určený pre ľudí, ktorí oceňujú nielen funkčnosť a vzhľad aplikácií, ale zaujímajú sa aj o ich vnútornú štruktúru.

Ak vás niekedy zaujímalo, čo je „pod kapotou“ vašej obľúbenej aplikácie a viete niečo málo o programovaní, tento článok je určený práve vám. Ukážeme vám, ako zobraziť zdrojový kód aplikácie pre Android priamo vo vašom gadget. Choď!

Všeobecné informácie

Väčšina programov pre OS Android, rovnako ako väčšina samotného operačného systému, je napísaná v programovacom jazyku. To znamená, že pri pohľade na zdrojový kód programov pre Android s najväčšou pravdepodobnosťou uvidíme kód Java pomocou súpravy Android SDK (ktorá zahŕňa nástroje platformy Android). Opäť platí, že na pochopenie zdrojového kódu aplikácií potrebujete mať základné znalosti Javy a fungovania Androidu.

Ako nájdem zdrojový kód aplikácií pre Android?

Najprv si stiahnite aplikáciu, ktorej zdrojový kód vás zaujíma. Potom prejdite na Play Market a stiahnite si pomôcku s názvom Show Java. Bude to ona, kto urobí dekompiláciu. Nainštalovali ste to? Skvelé, teraz prejdime k zábavnej časti – extrahovaniu zdrojového kódu programu pre Android. Spustite Show Java.

Vyberte požadovanú aplikáciu z nainštalovaných, alebo ju nájdite na SD karte. Teraz musíte vybrať dekompilátor. Väčšinou volím CRF. Ak máte nejaké problémy, skúste JaDX.

Po dokončení procesu dostanete zoznam zdrojových balíkov aplikácií pre Android. Samozrejme, toto nie je 100% kópia kódu, ktorý napísali vývojári tejto aplikácie. Hlavná logika však zostáva, nie je ťažké ju rozlíšiť. Čo robiť so zdrojmi? Čokoľvek. Pozrite sa, rozoberte, možno vás budú zaujímať niektoré „funkcie“ alebo vlastnosti implementácie funkčnosti programu.

nadpis:

Pojem „tajné kódy pre Android“ označuje také kombinácie znakov, ktoré boli pôvodne určené na testovanie zariadení, na ktorých je tento operačný systém nainštalovaný.

S ich pomocou vývojári kontrolujú telefóny a tablety pred ich odoslaním na predaj. A ich celkový počet dosahuje niekoľko desiatok.

Zavedenie určitej sekvencie vám umožňuje prijímať údaje alebo vykonávať akcie, ktoré sú pre bežných používateľov nedostupné.

Obsah:

Vlastnosti "tajných" šifier

Mnohí používatelia, ktorí čelia potrebe používať takéto príkazy, sa môžu pýtať na dôvod ich utajenia.

Po prvé, takýto názov pre kombináciu symbolov a čísel bol prijatý kvôli skutočnosti, že väčšina majiteľov ich nepotrebuje.

A návod tieto príkazy nespomína.

Ak chcete použiť ktorýkoľvek z nich, musíte zadať „Telefón“ do číselníka aplikácie (zelená alebo modrá trubica na hlavnej obrazovke).

Tablety bez 3G modulu túto možnosť štandardne nemajú.

A aby bolo možné spustiť kódy, používateľ si musí stiahnuť špeciálnu aplikáciu a nájsť ju v dotaze "Dialer".

Kombinácie pre akýkoľvek gadget Android

Informačné sekvencie umožňujú získať údaje o rôznych charakteristikách zariadenia a jeho jednotlivých prvkov:

  • *#06# - o čísle IMEI;
  • *#*#4636#*#* - o batérii a sieti Wi-Fi;
  • *#*#44336#*#* - o firmvéri vrátane čísla CSC a dátumu zostavenia;
  • *#*#232338#*#* - o adrese bezdrôtovej siete;
  • *#34971539# - o fotoaparátoch modulu gadget;
  • *#*#1234#*#* (hoci * # 2222 # funguje oveľa častejšie) - o firmvéri.

Pri písaní *#*#1111#*#* na obrazovke môžete získať informácie o verzii softvéru.

Úvod *#*#2222#*#* zobrazuje údaje o doske.

Kód zobrazí informácie o verzii snímača *#*#2663#*#* , o RAM - *#*#3264#*#* a údaje adresy Bluetooth sú *#*#232337#*#*.

Overovacie a testovacie príkazy

Existuje skupina na testovanie zariadenia:

  • Kontrola služby Google Talk zaisťuje konzistentnosť *#*#8255#*#* ;
  • otestovať displej - *#*#0*#*#* ;
  • na testovanie rôznych častí (od kamery po mikrofón) - *#0*# ;
  • pre audio test - dva naraz: *#*#0673#*#* a *#*#0289#*#* .

Fungovanie podsvietenia a vibrácií môžete skontrolovať zadaním kombinácie *#*#0842#*#* .

Testovanie pomocou príkazu *#*#232339#*#* a dodatočné *#*#526#*#* .

Overenie sa vykonáva odoslaním príkazov *#*#1472365#*#* (na bežný test) príp *#*#1575#*#* .

Sieť Bluetooth je skontrolovaná *#*#232331#*#* .

Niekoľko ďalších užitočných príkazov vám umožní otestovať výkon obrazovky ( *#*#2664#*#* ), detektory pohybu ( *#*#0588#*#* ) a GSM modul ( *#*#7262626#*#* ).

A vstup *#197328640# poskytuje prechod do servisného režimu.

Nebezpečné kombinácie

Existuje niekoľko možností, ktorých zadaním môžete vykonať vážne zmeny v systéme bez možnosti vrátiť sa do pôvodného stavu.

Medzi ne patrí napr *#*#7780#*#* a *2767*3855# .

Prvý príkaz resetuje všetky nastavenia a odstráni aplikácie nainštalované používateľom, druhý príkaz úplne preinštaluje systém.

Kombinácia *#*#7594#*#* vám umožní zbaviť sa ponuky vypnutia - keď stlačíte príslušné tlačidlo, alebo sa automaticky vypne bez toho, aby sa používateľ na niečo pýtal.

Výber kódu *#*#8351#*#* je potrebná na umožnenie registrácie hlasového vytáčania a *#*#8350#*#* - na vypnutie tohto režimu.

Následná sekvencia #*5376# používa sa na vymazanie správ a niekoľko kombinácií pre systém Android #*3876# , #*3851# a #*2562# reštartujte modul gadget.

Špeciálne kódy pre produkty jednotlivých výrobcov

Existuje niekoľko kombinácií vhodných len pre určité modely alebo značky gadgetov. Dajú sa zhrnúť do malej tabuľky.

Tab. 1.kódy pre určité modely mobilných zariadení s OS Android.
značka, model Príkaz Akcia
Sony **05***# odblokovanie PUK kódu
LG, G3 3845#*855# prístup do servisného menu
Samsung, Galaxy S4 *#0011# prejdite do menu
HTC ##3424#

##33284#

spustenie diagnostického procesu

informácie o stave siete

Motorola *#*#786#*#*

*#*#2486#*#*

obnoviť všetky nastavenia

prejdite do vstavaného menu

Okrem nich sú tu aj ďalšie tímy. S ich nájdením vám pomôže špeciálna aplikácia Secret Codes od PlayMarket. Dokáže odhaliť aj tie, ktoré nie sú v zozname.

Mali by ste vedieť: Nie všetky sekvencie, dokonca ani tie univerzálne, budú fungovať na každom smartfóne. Obmedzením používania tajnej kombinácie môže byť buď svojpomocne preinštalovaný operačný systém, prevzatý nie z oficiálnej webovej stránky, ale zo zdrojov tretích strán.

Naučiť sa nový jazyk a vývojové prostredie je minimum, ktoré sa od vás vyžaduje, ak chcete napísať svoju prvú mobilnú aplikáciu. Načrtnúť základný zoznam úloh pre Android alebo iOS s porozumením bez kopírovania príkladu z knihy bude trvať aspoň niekoľko týždňov. Môžete však preskočiť učenie Objective-C alebo Java a stále rýchlo vyvíjať aplikácie pre smartfóny pomocou technológií, ako je PhoneGap.

Ak ste si pozorne preštudovali novinky, ktoré nás čakajú vo Windows 8, možno ste si všimli, že pod ním bude možné vyvíjať aplikácie v HTML5. Myšlienka v skutočnosti nie je nová - technológie, ktoré implementujú rovnaký prístup pre mobilné platformy, sa vyvíjajú míľovými krokmi. Jedným z týchto rámcov, ktorý vám umožňuje vyvíjať aplikácie pre smartfóny pomocou množstva HTML, JavaScriptu a CSS, ktoré sú nám známe!, je presne PhoneGap. Aplikácia napísaná s jeho pomocou je vhodná pre všetky populárne platformy: iOS, Android, Windows Phone, Blackberry, WebOS, Symbian a Bada. Nebudete sa musieť učiť zvláštnosti programovania pre jednotlivé platformy (napríklad Objective-C v prípade iOS), zaoberať sa rôznymi API a vývojovými prostrediami. Všetko, čo potrebujete na vytvorenie multiplatformovej mobilnej aplikácie, je znalosť HTML5 a špeciálneho API PhoneGap. V tomto prípade výstupom nebude hlúpa HTML stránka, „zarámovaná“ v rozhraní aplikácie, nie! Rozhranie API rámca vám umožňuje využívať takmer všetky možnosti telefónu, ktoré sa používajú pri vývoji pomocou natívnych nástrojov: prístup k akcelerometru, kompasu, fotoaparátu (nahrávanie videa a fotografovanie), zoznam kontaktov, súborový systém, systém upozornení (štandard notifikácie v telefóne), úložiská a pod. Nakoniec, takáto aplikácia môže bezbolestne pristupovať k akejkoľvek medzidoménovej adrese. Môžete znovu vytvoriť natívne ovládacie prvky pomocou rámcov ako jQuery Mobile alebo Sencha a konečný program vyzerá, akoby bol napísaný v rodnom jazyku na mobilnom zariadení (alebo takmer tak). Najlepšie je ilustrovať si vyššie uvedené v praxi, to znamená napísať žiadosť, preto navrhujem začať hneď cvičiť. Naplánujte si čas – všetko o všetkom zaberie sotva viac ako pol hodiny.

Čo vytvoríme

Zoberme si iOS ako cieľovú platformu – áno, peniaze sú v AppStore a tam je najlepšie monetizovať svoj vývoj :). Ale hneď to vysvetlím: to isté, bez zmien, sa dá urobiť, povedzme, pre Android. Dlho som rozmýšľal, ktorý príklad zvážiť, keďže som nechcel písať ďalší nástroj na sledovanie zoznamu úloh. Preto som sa rozhodol vytvoriť aplikáciu s názvom Geo-Reminder, navigačný program, ktorého účel možno opísať jednou frázou: "Dajte mi vedieť, keď som tu znova." V AppStore je množstvo utilít, ktoré umožňujú „zapamätať si“ miesto, kde používateľ zaparkoval auto. Je to skoro to isté, len trochu jednoduchšie. Môžete označiť bod na mape mesta, nastaviť preň určitý polomer a naprogramovať správu. Keď najbližšie zasiahnete kruh so zadaným polomerom, aplikácia vás na to upozorní a bod sa vymaže. Podľa tohto plánu budeme postupovať: najprv vytvoríme jednoduchú webovú aplikáciu, otestujeme ju v prehliadači a následne pomocou PhoneGap prenesieme na platformu iOS. Je veľmi dôležité prototypovať a testovať väčšinu kódu v prehliadači na počítači, keďže ladenie aplikácie v telefóne je oveľa náročnejšie. Použijeme rámec jQuery JS s jQuery Mobile (jquerymobile.com) ako kostru a Google Maps v3 ako mapový nástroj. Aplikácia bude pozostávať z dvoch strán: mapy a zoznamu bodov.

  • Na mape je nastavená značka vašej aktuálnej polohy. Kliknutím na mapu sa vytvorí bod, ku ktorému sa správa pripojí (napríklad „auto v blízkosti“). Bod je možné vymazať kliknutím naň. Geosteering API sa používa na pohyb značky osoby po mape.
  • Na stránke so zoznamom bodov by malo byť ďalšie tlačidlo "Vymazať všetky body" a vedľa každého bodu - tlačidlo "Vymazať tento bod". Ak kliknete na položku v zozname, príslušný bod sa zobrazí na mape. Používateľské nastavenia a zoznam bodov sa uložia do localStorage.

rámce používateľského rozhrania

jQuery Mobile určite nie je jediným rámcom na budovanie mobilného rozhrania. Webová stránka PhoneGap má obrovský zoznam knižníc a rámcov, ktoré môžete použiť (phonegap.com/tools): Sencha Touch, Impact, Dojo Mobile, Zepto.js atď.

Aplikačný rámec

Hneď vysvetlím, prečo budeme používať jQuery Mobile. Táto knižnica JS nám poskytuje hotové prvky rozhrania mobilnej aplikácie (čo najbližšie k natívnym) pre rôzne platformy. Na výstupe predsa potrebujeme mobilnú aplikáciu a nie stránku z prehliadača! Stiahnite si teda najnovšiu verziu jQuery Mobile (jquerymobile.com/download) a presuňte prvé súbory aplikácie, ktoré potrebujeme, do pracovného priečinka:

  • obrázky / (sem presuňte všetky obrázky z priečinka s rovnakým názvom v archíve jq-mobile);
  • index.css;
  • index.html;
  • index.js;
  • jquery.js;
  • jquery.mobile.min.css;
  • jquery.mobile.min.js.

Zdroje je potrebné urobiť hlavne lokálne, aby používateľ v budúcnosti nemíňal mobilný internet. Teraz vytvoríme drôtový model pre stránky v súbore index.html. Nižšie uvedený kód popisuje hornú časť stránky s mapou, slovami „Geo-Reminder“ a tlačidlom „Body“.

Mapová stránka

Geo-pripomienka

Body

Atribút stránky data-dom-cache = "true" sa vyžaduje, aby sa zabránilo jej uvoľneniu z pamäte. Pre tlačidlo "Points" použite data-transition = "pop", aby sa stránka "Points List" otvorila s efektom "Bubble". Viac o tom, ako fungujú stránky jQuery Mobile, si môžete prečítať v dobrom manuáli (bit.ly/vtXX3M). Analogicky vytvorte stránku so zoznamom bodov:

Stránka so zoznamom bodov

vymazať všetko

Body

Mapa

Pre tlačidlo „Mapa“ napíšeme aj data-transition = „pop“, ale pridáme atribút data-direction = „reverse“, aby sa stránka „Mapa“ otvorila s efektom „Fade“. Rovnaké atribúty zapíšeme do šablóny bodu. To je všetko, náš rám je pripravený.

Vytvorenie aplikácie

Teraz musíme zobraziť mapu, pre ktorú použijeme štandardné rozhranie Google Maps API, ktoré používajú milióny rôznych stránok:

Var latLng = new gm.LatLng (this.options.lat, this.options.lng); this.map = new gm.Map (prvok, (zoom: this.options.zoom, // Vybrať stred počiatočného priblíženia: latLng, // Nastaviť počiatočné centrum mapTypeId: gm.MapTypeId.ROADMAP, // Normálna mapa vypnúťDoubleClickZoom: true, // Zakázať automatické priblíženie klepnutím / dvojitým kliknutím vypnúťDefaultUI: true // Zakázať všetky prvky rozhrania));

Tu je Gm premenná, ktorá odkazuje na objekt v Mapách Google. V kóde som dobre okomentoval inicializačné parametre. Ďalším krokom je nakreslenie ľudskej značky na mapu:

This.person = new gm.Marker ((mapa: this.map, icon: new gm.MarkerImage (PERSON_SPRITE_URL, new gm.Size (48, 48))));

Ako PERSON_SPRITE_URL sa používa adresa škriatka muža z panorám Google. Jeho statická adresa je maps.gstatic.com/mapfiles/cb/mod_cb_scout/cb_scout_sprite_api_003.png. Používateľ pridá body kliknutím na mapu, takže na ich kreslenie budeme počúvať udalosť kliknutia:

Gm.event.addListener (this.map, "click", function (event) (self.requestMessage (function (chyba, správa) (// Metóda, ktorá vráti text zadaný používateľom, ak (chyba) return); // Metóda pridá bodku do zoznamu aktívnych a // nakreslí ju na mapu self.addPoint (event.latLng, self.options.radius, message); self.updatePointsList (); // Prekreslí zoznam bodov) ;)), nepravda);

Väčšinu kódu poskytujem – zvyšok hľadajte na disku. Ďalej musíme naučiť aplikáciu pohybovať ikonou používateľa po mape. V prototype používame Geolocation API (to, ktoré sa používa aj v desktopových prehliadačoch):

If (navigator.geolocation) (// Skontrolujte, či prehliadač podporuje funkciu geolokácie gpsSuccess (pos) (var lat, lng; if (pos.coords) (lat = pos.coords.latitude; lng = pos.coords.longitude;) else (lat = poz. zemepisná šírka; lng = poz. zemepisná dĺžka;) self.movePerson (new gm.LatLng (lat, lng)); // Presunutie ikony používateľa) // Vyžiadanie aktuálnej // polohy používateľa window.setInterval ( function () (// Dopyt na aktuálnu pozíciu navigator.geolocation.getCurrentPosition (gpsSuccess, $ .noop, (enableHighAccuracy: true, maximumAge: 300000));), 3000);)

Metóda movePerson používa jednoduchý postup getPointsInBounds () na kontrolu, či sa používateľ nachádza na niektorom prístupovom bode. Posledná otázka je, kam uložiť zoznam bodov? V HTML5 bolo možné používať localStorage, takže to nezanedbávajme (nechám na vás, aby ste na to prišli sami s týmito časťami kódu, ktoré som dobre okomentoval). Takže aplikácia spustená v prehliadači je pripravená!

Spustenie webovej aplikácie

Ako som povedal, ladenie je väčšinou potrebné vykonať na počítači. Na testovanie webových aplikácií na počítači je najvhodnejší prehliadač Safari alebo Chrome. Po odladení v týchto prehliadačoch si môžete byť istí, že vaša aplikácia „nebeží“ v prehliadači mobilného telefónu. Obidva tieto prehliadače sú kompatibilné s väčšinou mobilných webových prehliadačov, pretože sú rovnako ako ony postavené na jadre WebKit. Po odstránení všetkých chýb môžete pristúpiť k spusteniu mobilnej webovej aplikácie priamo v telefóne. Za týmto účelom nastavte svoj webový server (aj Denwer alebo XAMPP) tak, aby obsluhoval vytvorenú stránku a otvorte ju už v prehliadači svojho mobilného telefónu. Aplikácia by mala vyzerať približne ako na obrázku. Tu je dôležité pochopiť, že budúca mobilná aplikácia vytvorená pre mobilnú platformu využívajúcu PhoneGap bude vyzerať takmer jedna k jednej, až na to, že navigačná lišta prehliadača sa nebude zobrazovať na obrazovke. Ak je všetko v poriadku, zo stránky môžete začať vytvárať plnohodnotnú iOS aplikáciu. Všimnite si, že sme sa doteraz ani len nedotkli PhoneGap a IDE pre mobilný vývoj.

Príprava

Na vytvorenie aplikácie pre iOS potrebujete počítač s operačným systémom Mac OS 10.6+ (alebo virtuálny stroj na Mac OS 10.6), ako aj vývojové prostredie Xcode s nainštalovaným iOS SDK. Ak nemáte nainštalovanú súpravu SDK, budete si musieť stiahnuť obraz disku, ktorý obsahuje Xcode a súpravu iOS SDK z webovej stránky spoločnosti Apple (developer.apple.com/devcenter/ios/index.action). Majte na pamäti, že obrázok váži približne 4 GB. Okrem toho sa budete musieť zaregistrovať na stránke Apple ako vývojár (ak sa nechystáte publikovať svoju aplikáciu v AppStore, môžete túto požiadavku obísť). S touto sadou môžete vyvíjať aplikácie v natívnom jazyku Objective-C pre iOS. Rozhodli sme sa to však vyriešiť a použiť PhoneGap, takže ešte musíme nainštalovať balík PhoneGap pre iOS. Stačí stiahnuť archív z offsite (https://github.com/callback/phonegap/zipball/1.2.0), rozbaliť ho a spustiť inštalátor v priečinku iOS. Po dokončení inštalácie by sa v ponuke projektov Xcode mala objaviť ikona PhoneGap. Po spustení budete musieť vyplniť niekoľko formulárov, no veľmi skoro uvidíte pracovný priestor IDE s vašou prvou aplikáciou. Ak chcete skontrolovať, či všetko funguje, stlačte tlačidlo Spustiť - emulátor iPhone / iPad by sa mal spustiť s aplikáciou šablóny PhoneGap. Kompilovaný program zobrazí chybu so správou, že index.html nebol nájdený - to je normálne. Otvorte priečinok, do ktorého ste uložili súbory primárneho projektu, a nájdite v ňom podpriečinok www. Presuňte ho do editora, kliknite na ikonu aplikácie v zozname vľavo a v zobrazenom okne vyberte „Vytvoriť odkazy na priečinky pre všetky pridané priečinky“. Ak znova spustíte program, všetko by malo fungovať. Teraz môžeme skopírovať všetky naše prototypové súbory do priečinka www. Je čas založiť náš prototyp pre prácu na smartfóne v spracovaní PhoneGap.

Presun prototypu

Najprv musíte do indexového súboru zahrnúť phonegap-1.2.0.js. PhoneGap vám umožňuje obmedziť zoznam hostiteľov dostupných na návštevu. Navrhujem hneď založiť takýto „biely zoznam“. V ponuke projektu otvorte Supporting Files / PhoneGap.plist, nájdite položku ExternalHosts a pridajte nasledujúcich hostiteľov, ku ktorým bude naša aplikácia pristupovať (sú to servery Google Maps): * .gstatic.com, * .googleapis.com, mapy. google.com. Ak ich nešpecifikujete, program zobrazí v konzole varovanie a mapa sa nezobrazí. Na inicializáciu webovej verzie našej aplikácie sme použili udalosť DOMReady alebo pomocníka jQuery: $ (document) .ready (). PhoneGap spustí udalosť deviceready, ktorá indikuje, že mobilné zariadenie je pripravené. Odporúčam použiť toto:

Document.addEventListener ("deviceready", funkcia () (nový Notificator ($ ("# map-canvas")); // Ak používateľ nemá internet, // informujte ho o tom, ak (navigator.network.connection .type = == Connection.NONE) (navigator.notification.alert ("Žiadne internetové pripojenie", $ .noop, TITLE);)), false);
Zakázať rolovanie: document.addEventListener ("touchmove", funkcia (udalosť) (event.preventDefault ();), false);

Potom nahradíme všetky upozornenia a potvrdíme hovory natívnymi hovormi, ktoré nám poskytuje PhoneGap:

Navigator.notification.confirm ("Vymazať bod?", Funkcia (id_tlačidla) (if (id_tlačidla === 1) (// kliknutie na tlačidlo OK self.removePoint (bod);)), TITLE);

Posledná vec, ktorú musíme zmeniť, je blok kódu, ktorý presúva ikonu používateľa po mape. Náš aktuálny kód tiež funguje, ale funguje menej optimálne (presunie ikonu, aj keď sa súradnice nezmenili) a neposkytuje také bohaté údaje ako analóg vo PhoneGap:

Navigator.geolocation.watchPosition (funkcia (pozícia) (self.movePerson (new gm.LatLng (position.coords.latitude, position.coords.longitude));), funkcia (chyba) (navigator.notification.alert ("kód: "+ error.code +" \ nmessage: "+ error.message, $ .noop, TITLE);), (frekvencia: 3000));

Tento kód je elegantnejší – spúšťa udalosť len vtedy, keď sa zmenili súradnice. Kliknite na tlačidlo Spustiť a uistite sa, že aplikácia, ktorú sme práve vytvorili, funguje správne v simulátore zariadenia iOS! Je čas začať behať na skutočnom zariadení.

Spustiť na zariadení

Pripojte svoj iPhone, iPod alebo iPad k počítaču so systémom Xcode. Program zistí nové zariadenie a požiada o povolenie použiť ho na vývoj. Nemá zmysel ju odmietať :). Opakujem ešte raz: na spustenie napísanej aplikácie na iOS musíte byť autorizovaným iOS vývojárom (inými slovami, musíte byť prihlásení na odber iOS Developer Programu). To bude treba zamieňať len v prípade vývoja aplikácií pre produkty Apple, s inými platformami (Android, Windows Phone) je všetko oveľa jednoduchšie. Tí, ktorí študujú na univerzite, majú vďaka niektorým benefitom šancu dostať sa do programu zadarmo. Všetci ostatní musia za účasť v programe zaplatiť 99 dolárov ročne. Spoločnosť Apple vydáva certifikát, ktorý môžete použiť na podpísanie kódu. Podpísaná aplikácia môže bežať na iOS a distribuovať v App Store. Ak nie ste študent a stále je vám ľúto 99 dolárov za nevinné experimenty, existuje ďalší spôsob - oklamať systém. Môžete si vytvoriť self-signed certifikát na overenie kódu a spustiť mobilný program na jailbreaknutom iOS zariadení (nebudem sa nad tým pozastavovať, pretože všetko je maximálne podrobne popísané v tomto článku: bit.ly/tD6xAf). Tak či onak, na obrazovke mobilu už čoskoro uvidíte funkčnú aplikáciu. Zastavte stopky. ako dlho ti to trvalo?

Iné platformy

Okrem PhoneGap existujú aj iné platformy, ktoré vám umožňujú vytvárať mobilné aplikácie bez použitia rodných jazykov. Uveďme zoznam najlepších hráčov.

Appcelerator Titanium (www.appcelerator.com).

Titanium dokáže vytvárať aplikácie primárne pre Android a iPhone, no nárokuje si aj podporu pre BlackBerry. Okrem samotného rámca projekt poskytuje sadu natívnych widgetov a IDE. Môžete vyvíjať aplikácie na Titanium zadarmo, ale budete musieť zaplatiť za podporu a ďalšie moduly (od 49 dolárov mesačne). Niektoré moduly tretích strán stoja až 120 USD ročne. Vývojári Appcelerator Titanium tvrdia, že na základe ich frameworku bolo napísaných viac ako 25 tisíc aplikácií. Zdrojový kód projektu je šírený pod licenciou Apache 2.

Corona SDK (www.anscamobile.com/corona).

Táto technológia podporuje hlavné platformy – iOS a Android. Framework sa zameriava predovšetkým na vývoj hier. Vývojári skutočne požadujú vysokokvalitnú optimalizáciu v OpenGL. Platforma nemá bezplatnú verziu a cena je dosť štipľavá: 199 dolárov ročne za licenciu pre jednu platformu a 349 dolárov ročne pre iOS a Android. Corona ponúka svoje vlastné emulátory IDE a zariadení. Corona aplikácie sú napísané v jazyku podobnom JavaScriptu.

Záver

Vytvorili sme jednoduchú mobilnú webovú aplikáciu a preniesli ju na platformu iOS pomocou PhoneGap v niekoľkých jednoduchých krokoch. Nenapísali sme ani jeden riadok kódu Objective-C, ale dostali sme kvalitný program, ktorý strávil minimum času portovaním a učením sa PhoneGap API. Ak uprednostňujete inú platformu, napríklad Android alebo Windows Mobile 7, tak si rovnako jednoducho, bez akýchkoľvek zmien pre tieto platformy, dokážete zostaviť našu aplikáciu (ku každej z nich existuje dobrý úvodný manuál a videonávod: phonegap .com/start) ... Aby ste sa presvedčili o konzistencii platformy, môžete sa pozrieť na hotové aplikácie na PhoneGap, ktoré vývojári technológií zhromaždili v špeciálnej galérii (phonegap.com/apps). PhoneGap je v skutočnosti ideálnou platformou na vytvorenie aspoň prototypu budúcej aplikácie. Jeho hlavnými výhodami sú rýchlosť a minimálne náklady, ktoré aktívne využívajú startupy, ktoré sú vo všetkých ohľadoch obmedzené zdrojmi. Ak sa aplikácia zadupáva a interné prvky v HTML + JS vám z nejakého dôvodu prestanú vyhovovať, vždy môžete aplikáciu preniesť do materinského jazyka. Musím povedať, že PhoneGap pôvodne vyvinul Nitobi ako open source projekt (úložisko sa nachádza na GitHub: github.com/phonegap). Zdrojový kód zostane naďalej otvorený, hoci v októbri minulého roka Nitobi kúpila spoločnosť Adobe. Netreba dodávať, aké sú vyhliadky projektu s podporou takéhoto giganta?

Používaním a učením sa aplikácií s otvoreným zdrojom sa môžete naučiť, ako sami vytvárať dobré aplikácie.


Najlepšie open source projekty pre Android sú uvedené nižšie. Vďaka nim sa môžete naučiť veľa skvelých postupov pre vývoj Androidu.

1. Android aplikácia s architektúrou MVP

MVP použitím .

2. Android aplikácia s architektúrou MVVM

Toto úložisko obsahuje aplikáciu, ktorá implementuje architektúru MVVM použitím Dagger2, GreenDao, RxJava2, Fast-Android-Networking a PlaceholderView.

3. Google I/O Android APP

Google I/O je vývojárska konferencia, ktorá sa koná každý rok. Obsahuje stovky technologických ukážok od vývojárov.


Tento projekt je konferenčná aplikácia pre Android. Aplikácia podporuje zariadenia so systémom Android 5.0+ a je optimalizovaná pre telefóny a tablety všetkých tvarov a veľkostí.


4. Výkresy architektúry Google Android

Platforma Android má veľkú flexibilitu pri organizovaní a archivácii aplikácie. Táto sloboda môže viesť k aplikáciám s veľkými triedami. To môže sťažiť testovanie, údržbu a rozširovanie.


Architektúra Android Blueprint Cieľom je ukázať, ako môžete pomôcť vyriešiť tieto problémy. Tento projekt ukazuje rovnakú aplikáciu implementovanú mnohokrát s použitím rôznych architektonických konceptov a nástrojov.


Tieto ukážky môžete použiť ako východiskový bod na vytváranie vlastných aplikácií. V centre pozornosti je štruktúra kódu, architektúra, testovanie. Majte však na pamäti, že existuje mnoho spôsobov, ako vytvárať aplikácie pomocou týchto architektúr a nástrojov. Zamerajte sa na svoje vlastné priority a nenechajte sa príliš uniesť tým, čo možno považovať za kanonické príklady.

5. Telegram

Android aplikácia, ktorá dokáže nadchnúť svojim dizajnom, vďaka skvelej implementácii materiálového dizajnu.

7. Drôt

Táto chatová aplikácia je plná obrázkov, filmov, GIF, hudby, náčrtov a iných foriem multimédií. Vždy tiež poskytuje bezpečné end-to-end šifrovanie.


8. Ribot aplikácie pre Android

Kickstarter je globálna komunita, ktorá pomáha oživiť kreatívne projekty. Preskúmajte tisíce projektov v oblasti umenia, dizajnu, filmu, hier, hudby a ďalších.

10. PocketHub

GitHub odmietol podporiť aplikáciu, takže bola uvoľnená pre verejnosť a je udržiavaná ako verejný projekt. Teraz spoločnosť aktívne pracuje na opätovnom zverejnení tejto aplikácie v Obchode Play. Táto aplikácia bude duchovným nástupcom pôvodnej aplikácie.

11. Jednoduchá aplikácia pre Android s MVP

Veľmi jednoduchá aplikácia, ktorá ukazuje, ako implementovať architektúru MVP.

Používaním a učením sa aplikácií s otvoreným zdrojom sa môžete naučiť, ako sami vytvárať dobré aplikácie.


Najlepšie open source projekty pre Android sú uvedené nižšie. Vďaka nim sa môžete naučiť veľa skvelých postupov pre vývoj Androidu.

1. Android aplikácia s architektúrou MVP

MVP použitím .

2. Android aplikácia s architektúrou MVVM

Toto úložisko obsahuje aplikáciu, ktorá implementuje architektúru MVVM použitím Dagger2, GreenDao, RxJava2, Fast-Android-Networking a PlaceholderView.

3. Google I/O Android APP

Google I/O je vývojárska konferencia, ktorá sa koná každý rok. Obsahuje stovky technologických ukážok od vývojárov.


Tento projekt je konferenčná aplikácia pre Android. Aplikácia podporuje zariadenia so systémom Android 5.0+ a je optimalizovaná pre telefóny a tablety všetkých tvarov a veľkostí.


4. Výkresy architektúry Google Android

Platforma Android má veľkú flexibilitu pri organizovaní a archivácii aplikácie. Táto sloboda môže viesť k aplikáciám s veľkými triedami. To môže sťažiť testovanie, údržbu a rozširovanie.


Architektúra Android Blueprint Cieľom je ukázať, ako môžete pomôcť vyriešiť tieto problémy. Tento projekt ukazuje rovnakú aplikáciu implementovanú mnohokrát s použitím rôznych architektonických konceptov a nástrojov.


Tieto ukážky môžete použiť ako východiskový bod na vytváranie vlastných aplikácií. V centre pozornosti je štruktúra kódu, architektúra, testovanie. Majte však na pamäti, že existuje mnoho spôsobov, ako vytvárať aplikácie pomocou týchto architektúr a nástrojov. Zamerajte sa na svoje vlastné priority a nenechajte sa príliš uniesť tým, čo možno považovať za kanonické príklady.

5. Telegram

Android aplikácia, ktorá dokáže nadchnúť svojim dizajnom, vďaka skvelej implementácii materiálového dizajnu.

7. Drôt

Táto chatová aplikácia je plná obrázkov, filmov, GIF, hudby, náčrtov a iných foriem multimédií. Vždy tiež poskytuje bezpečné end-to-end šifrovanie.


8. Ribot aplikácie pre Android

Kickstarter je globálna komunita, ktorá pomáha oživiť kreatívne projekty. Preskúmajte tisíce projektov v oblasti umenia, dizajnu, filmu, hier, hudby a ďalších.

10. PocketHub

GitHub odmietol podporiť aplikáciu, takže bola uvoľnená pre verejnosť a je udržiavaná ako verejný projekt. Teraz spoločnosť aktívne pracuje na opätovnom zverejnení tejto aplikácie v Obchode Play. Táto aplikácia bude duchovným nástupcom pôvodnej aplikácie.

11. Jednoduchá aplikácia pre Android s MVP

Veľmi jednoduchá aplikácia, ktorá ukazuje, ako implementovať architektúru MVP.