Speciální skryté kódy pro smartphony Android. Jak zobrazit zdrojový kód aplikace pro Android

Smartphony (Samsung, HTC, Motorola, Sony, LG, Lenovo a další) s Androidem (6.0.1, 6.0, 5.1, 5.0, 4.4.2, 4.2, 4.1.2 a další) mají tajné kódy, které zobrazují skryté funkce.

Umožňují každému, kdo o nich ví, dostat se do operačního systému na mnohem hlubší úrovni, než je povoleno běžným uživatelům.

Tato zadní vrátka umožňují vývojářům (třetím stranám) vytvářet další funkce ve svých programech a aplikacích.

Speciální skryté kódy (zadní vrátka) se používají i k řešení problémů v chytrých telefonech, zatímco jiné režimy nejsou dostupné, byly například zablokovány.

Vědět, jak získat přístup ke skrytým nastavením smartphonu, může být velmi užitečné, pokud víte, jak je používat.

Na chytrých telefonech Android je vždy několik tajných kódů, díky kterým máme přístup ke skrytým funkcím a informacím, které nejsou dostupné v nabídce operačního systému.

Speciální kódy jsou sekvence řetězců a čísel pro přístup ke skryté nabídce, kde můžete měnit základní parametry zařízení a systému.

Používaly se dokonce i ve starších modelech telefonů, než jsme vstoupili do éry chytrých telefonů.

Speciální kódy pro Android

Většina těchto kódů je společná pro většinu verzí Androidu a mobilních zařízení.

Všechny kódy se zadávají pomocí klávesnice, na které vytáčíte telefonní číslo.

Skryté funkce také do značné míry závisí na výrobci a není zaručeno, že budou fungovat na všech modelech smartphonů.

Jejich účinek si můžete vyzkoušet na zařízeních značek Samsung, Lenovo, HTC, Motorola, Sony a mnoha dalších.

Tyto kódy jsou generovány vývojáři systému Android, kteří se snaží opravit obtížné problémy, kterým čelí zařízení Android.

Tyto kódy tedy pomáhají uživatelům ovládat jejich zařízení pomocí kombinace symbolů a čísel napsaných na jejich číselníku, kde operační systém automaticky spustí předdefinovanou akci.

Co umí tajné kódy Androidu na smartphonu?

Skryté tajné kódy vám dávají šanci lépe poznat svůj telefon nebo tablet a provést určité změny.


Můžete získat informace o zařízení a dělat mnoho věcí. Zde jsou některé z nich.
  1. Obnovit nastavení
  2. Vymazat všechna data
  3. Přeinstalace firmwaru telefonu
  4. Test obrazovky
  5. Zkontrolujte kód produktu
  6. Kontrola stavu baterie a mnoho dalších důmyslných věcí.

Překvapte své přátele skrytými kódy Android

Ano! Na telefonu můžete dělat nějaké triky, ale představení některých z nich může způsobit velké změny v konfiguraci zařízení, takže si s nimi nehrajte, pokud si nejste jisti, co dělají.

  • * # 06 # - zobrazit IMEI * # 0 * # - zobrazit nabídku služeb na nových telefonech, jako je Samsung Galaxy S III.
  • * # * # 4636 # * # * - informace o telefonu, včetně statistik využití, včetně baterie.
  • * # * # 34971539 # * # * — podrobné informace o webové kameře
  • *#*#7780#*#* – Obnovení továrního nastavení, včetně nastavení účtu Google, dat aplikací a stažených aplikací.
  • * 2767 * 3855 # - POZOR! Toto je instalace softwaru od nuly a vymaže všechna data z telefonu - je lepší nepoužívat
  • * # * # * 282 * 273 663 282 * 255 # * # * - okamžitá záloha všech mediálních souborů ve vybrané složce
  • * # * # 197328640 # * # * - umožňuje testovací režim pro údržbu (servisní režim)
  • * # * # 232339 # * # * nebo * # * # 526 # * # * nebo * # * # 528 # * # * - testy wifi s pokročilými možnostmi nabídky.
  • * # * # 0842 # * # * - test podsvícení a vibrací.
  • * # * # 2664 # * # * - test dotykové obrazovky.
  • * # * # 1111 # * # * - zobrazuje verzi softwaru (FTA * # * # 1234 # * # * změny ve verzi firmwaru).
  • * # * # 1234 # * # * - zobrazuje verzi softwaru.
  • * # * # 2222 # * # * - Zobrazuje verzi hardwaru FTA.
  • * # 12580 # * 369 # - diagnostika softwaru a hardwaru.
  • *#9090# - konfigurace diagnostiky.
  • *#872564# – protokoly USB.
  • * # 9900 # - režim výpisu stavu systému.
  • *#301279# - Ovládací menu pro HSDPA/HSUPA.
  • *#7465625# - Zobrazuje stav zámku telefonu.
  • * # * # 7764726 - skryté nabídky Motorola Droid.
  • * # * # 7594 # * # * - umožňuje změnit funkci tlačítka napájení (napájení) pro automatické vypnutí smartphonu.
  • * # * # 232338 # * # * - zobrazí MAC adresu Wi-Fi karty.
  • * # * # 1472365 # * # * - Provede rychlou kontrolu GPS.
  • * # * # 1575 # * # * - Proveďte pokročilejší test GPS.
  • * # * # 0283 # * # * — provádění testovacích balíčků.
  • * # 0 * # — test displeje.
  • * # * # 0289 # * # * - test zvuku.
  • * # * # 2663 # * # * - Zobrazuje verzi zařízení s dotykovou obrazovkou.
  • * # * # 0588 # * # * - kontroluje senzor přiblížení.
  • * # * # 3264 # * # * - zobrazuje verzi RAM.
  • * # * # 232331 # * # * - Testy modulu Bluetooth.
  • * # * # 232337 # * # - zobrazuje adresu Bluetooth.
  • * # * # 7262626 # * # * - testy zařízení v přírodních podmínkách.
  • * # * # 8255 # * # - monitorování Google Talk.
  • * # * # 4986 * 2650468 # * # * - zobrazuje informace o telefonu a vybavení PDA.
  • * # * # 44336 # * # * - zobrazuje datum verze (sestavení) a seznam změn.
  • * # * # 8351 # * # * - Povolí pouze režim, vytočte * # * # 8350 # * # * - tento režim deaktivujete
  • 778 (+ Connect) - zobrazí nabídku EPST.

Následující kódy budou fungovat pouze s mobilními zařízeními HTC

  • * # * # 3424 # * # * - Povolí funkci testovacího programu HTC * # * # 4636 # * # * - Zobrazí informace o zařízení HTC.
  • 8626337 # - VOCODER začíná.
  • 33284 # - proveďte kontrolu.
  • * # * # 8255 # * # * - začněte sledovat Google Talk.
  • #3424 - spustí diagnostický režim.
  • #3282 - zobrazí nabídku EPST.

Více kódů můžete najít online, ale nezapomeňte je používat opatrně, i když chcete ve společnosti geeků vypadat kompetentně. Hodně štěstí.

Nyní, když rozumíte pojmu programování, podíváme se na zdrojový kód – jeho hlavní součásti a jak s nimi pracovat.

Tento článek je součástí série článků o vývoji pro začátečníky.

Část 2 – Zdrojový kód

Mnoho programovacích jazyků přichází s mnoha knihovnami. Obvykle se nazývají SDK(softwarové vývojové sady). Načteno spolu s kompilátorem pro další tvorbu technologií, aplikací a projektů. Existují také rámců, vytvořený pro usnadnění vývoje projektu a kombinování jeho různých součástí.

Některé identifikátory obsažené ve vybraném jazyce nelze použít jako identifikátor uživatele. Příkladem je slovo řetězec v Javě. Takové identifikátory spolu s klíčovými slovy se nazývají Vyhrazená slova. Jsou také speciální.

Všechna klíčová slova jsou vyhrazena. Také slova, která zvolíte, by měla dávat smysl těm, kteří je vidí poprvé.

Základní datové typy

Zdrojový kód je koncentrace různých typů dat: čísla(3, 5,7, -100, 3,142) a symboly(M, A). Některé programovací jazyky rozdělují čísla na podtypy, jako např celá čísla(celá čísla).

Celá čísla mohou být ikonický A nepodepsaný, velký i malý. Ten ve skutečnosti závisí na množství paměti vyhrazené pro taková čísla. Existují čísla s desetinnými částmi, obvykle tzv dvojnásobek A plovák v závislosti na jazyce, který se učíte.

Existují také logické datové typy booleovský na tom záleží věrný nebo falešný.

Komplexní datové typy

Výše uvedené typy jsou známé jako elementární, primární nebo základní. Z těchto základních můžeme vytvořit složitější datové typy.

Pole( Pole) je nejjednodušší formou komplexního typu. Řádek ( Řetězec) je pole znaků. Bez těchto dat se neobejdeme a často je využíváme při psaní kódu.

Kombinace znaků je čára. Abychom použili analogii, řetězec k počítači znamená, že slovo patří člověku. Slovo "teploměr" se skládá z 9 znaků - nazýváme ho jednoduše řetězec znaků. Zpracování řetězců je rozsáhlé téma, které by se měl naučit každý začínající programátor.

Složité datové typy přicházejí s většinou používaných programovacích jazyků. Existují i ​​jiné, například systémy tříd. Tento jev je také známý jako objektově orientované programování ( OOP).

Proměnné

Proměnné jsou jednoduše názvy paměťových míst. Někdy je potřeba uložit data ve zdrojovém kódu na místo, kde je můžete vyvolat a použít. Obvykle se jedná o paměťové místo, které je rezervováno kompilátorem/interpretem. Musíme tyto paměťové buňky pojmenovat, abychom si je později zapamatovali. Zvažte níže uvedený fragment kódu Python:

pet_name = "Hippo" tisk pet_name

pet_name = "Hippo"

vytisknout pet_name

pet_name– příklad proměnné a typu uložených dat pet_name, je řetězec, který z proměnné dělá řetězec. Jsou tam i čísla. Proměnné jsou tedy klasifikovány podle datového typu.

Konstanty

Konstanty jsou hodnoty, které se během životního cyklu programu nemění. Nejčastěji se v jejich jménech používají velká písmena. Některé jazyky podporují vytváření trvalých hodnot a některé ne.

Existují silně typované programovací jazyky, ve kterém každá proměnná musí být určitého typu. Jakmile vyberete typ, již jej nebudete moci změnit. Java je dobrým příkladem takového jazyka.

Jiné tyto funkce neposkytují. jsou volně napsaný nebo dynamické programovací jazyky. Příklad - Python.

Zde je návod, jak deklarovat konstantní hodnotu v JavaScriptu:

JavaScript

const petName = "Hippo"

const petName = "Hippo"

Doslovy

V každém zdrojovém kódu existují datové typy, které se používají v celém textu a mění se pouze tehdy, jsou-li upravovány. Tento literály, které by neměly být zaměňovány s proměnnými nebo konstantami. Žádný zdrojový kód se bez nich neobejde. Literály mohou být řetězce, čísla, desetinná místa nebo jakýkoli jiný datový typ.

Ve výše uvedeném úryvku je slovo „Hippo“ řetězcový doslov. Dokud neupravíte zdrojový kód, bude to vždy „Hippo“. Jakmile se naučíte kódovat, naučíte se manipulovat s literály způsobem, který ponechá většinu kódu beze změny.

Interpunkce/symboly

Ve většině psaných programů najdete různá interpunkční znaménka v závislosti na zvoleném programovacím jazyce. Například Java používá více interpunkce než Python.

Mezi základní znaky patří čárka ( , ), středník ( ; ), dvojtečka ( : ), složené závorky ( {} ), řádné závorky ( () ), hranaté závorky (), uvozovky ( «» nebo » ), svislý pruh ( | ), lomítko ( \ ), bod ( . ), otazník ( ? ), kočáry ( ^ ) a procenta ( % ).

Vítejte ve světě programování, kde jsou interpunkční znaménka vašimi nejlepšími přáteli. Brzy zjistíte, že jich je ve vašem kódu vždy hodně.

Operátoři

Šance, že napíšete zdrojový kód k provedení nějaké operace, je extrémně vysoká. Všechny programovací jazyky, které používáme, zahrnují mnoho operátorů. Mezi ty používané patří sčítání ( + ), divize ( / ) násobení ( * ), odčítání ( ) a znaménko větší než ( > ).

Operátoři jsou obvykle klasifikováni takto:

  1. Operátoři přiřazení. Někdy jsou interpretovány jako rovná se, což je špatně. Rovnost se používá k porovnání dvou hodnot. Ale operátor přiřazení přiřadí hodnotu například proměnné pet_name = 'Hippo'
  2. Aritmetické operátory. Skládá se z operátorů, kteří provádějí aritmetické úkoly, jako je sčítání a odčítání. Některé programovací jazyky poskytují aritmetické operátory, když je jiné nemusí mít ve svém arzenálu. Například operátor modul/zbytek ( % ) vrátí zbytek operací divize.
  3. Relační operátory. Slouží k porovnání hodnot. Patří mezi ně větší než, menší než, rovno, ne rovno. Jejich prezentace závisí také na tom, jaký programovací jazyk se učíte. U některých PL se to nerovná - je <> , pro ostatní - != nebo !== .
  4. Logické operátory. Používá se k provádění logických operací. Běžně používané logické operátory jsou A, nebo, Žádný. Některé jazyky představují tyto operátory jako speciální znaky. Například, && reprezentovat logické A, || - Pro nebo, A ! - Pro Žádný. Je obvyklé vyhodnocovat logické hodnoty pomocí booleovských hodnot věrný nebo falešný.

Komentáře

Dokumentace bude důležitým aspektem programovacích činností. Takto vysvětlujete svůj kód ostatním programátorům. To se provádí pomocí komentářů, které se přidávají do různých částí kódu. Pomocí komentářů můžete ostatní programátory vést vaším napsaným programem.

Kompilátor ignoruje řádky kódu, které jsou komentáře.

Deklarace komentářů se v různých jazycích liší. Například, # slouží k zadávání komentářů v Pythonu.

Zde je příklad komentáře v Pythonu:

# fragment programu pro výpočet Fibonacciho z N čísel

Jáva

// rekurzivní implementace Faktorový import java.util.Scanner; class RecursiveFactorial ( public static void main(String args) ( Scanner input=new Scanner(System.in); System.out.print("Najít faktor: "); int num=input.nextInt(); System.out .println("Činitel "+num+" = "+fact(num) ) static long fact(int n) ( if(n< 2) return 1; return n * fact(n-1); } }

Používáním a učením se aplikací s otevřeným zdrojovým kódem se můžete naučit, jak sami vytvářet dobré aplikace.


Níže jsou uvedeny nejlepší open source projekty pro Android. Díky nim se můžete naučit spoustu skvělých praktik pro vývoj Androidu.

1. Aplikace pro Android s architekturou MVP

MVP pomocí .

2. Aplikace pro Android s architekturou MVVM

Toto úložiště obsahuje aplikaci, která implementuje architekturu MVVM pomocí Dagger2, GreenDao, RxJava2, Fast-Android-Networking a PlaceholderView.

3. Aplikace Google I/O pro Android

Google I/O je vývojářská konference, která se koná každý rok. Obsahuje stovky technologických ukázek od vývojářů.


Tento projekt je aplikace pro Android pro konferenci. Aplikace podporuje zařízení se systémem Android 5.0+ a je optimalizována pro telefony a tablety všech tvarů a velikostí.


4. Výkresy architektury Google Android

Platforma Android má velkou flexibilitu při organizování a archivaci aplikací. Tato svoboda může vést k aplikacím s velkými třídami. To může ztížit testování, podporu a rozšíření.


Architektura Android Blueprint má demonstrovat možné způsoby, jak pomoci tyto problémy řešit. Tento projekt ukazuje stejnou aplikaci implementovanou mnohokrát pomocí různých architektonických konceptů a nástrojů.


Tyto ukázky můžete použít jako výchozí bod pro vytváření vlastních aplikací. Zde se zaměřujeme na strukturu kódu, architekturu, testování. Mějte však na paměti, že existuje mnoho způsobů, jak pomocí těchto architektur a nástrojů vytvářet aplikace. Zaměřte se na své vlastní priority a nenechte se příliš pohltit tím, co by se dalo považovat za kanonické příklady.

5. Telegram

Android aplikace, která dokáže nadchnout svým designem, díky skvělé implementaci material designu.

7. Drát

Tato chatovací aplikace je plná obrázků, filmů, GIFů, hudby, náčrtů a dalších forem médií. Poskytuje také bezpečné end-to-end šifrování za všech okolností.


8. Ribot aplikace pro Android

Kickstarter je globální komunita, která pomáhá přivádět kreativní projekty k životu. Prozkoumejte tisíce projektů v oblasti umění, designu, filmu, her, hudby a dalších.

10.PocketHub

GitHub odmítl aplikaci podpořit, a tak byla uvolněna pro veřejnost a udržována jako veřejný projekt. Nyní společnost aktivně pracuje na opětovném vydání této aplikace v Obchodě Play. Tato aplikace bude duchovním nástupcem původní aplikace.

11. Jednoduchá aplikace pro Android s MVP

Velmi jednoduchá aplikace ukazující, jak implementovat architekturu MVP.

Naučit se nový jazyk a vývojové prostředí je minimum, které se od vás vyžaduje, pokud chcete napsat svou první mobilní aplikaci. Načrtnutí základního seznamu úkolů pro Android nebo iOS bez kopírování příkladu z knihy bude trvat nejméně několik týdnů. Ale nemůžete ovládat Objective-C nebo Java a přesto rychle vyvíjet aplikace pro smartphony, pokud používáte technologie, jako je PhoneGap.

Pokud jste pečlivě studovali novinky, které nás ve Windows 8 čekají, možná jste si všimli, že pod ním bude možné vyvíjet aplikace v HTML5. Myšlenka ve skutečnosti není nová - technologie, které implementují stejný přístup pro mobilní platformy, se vyvíjejí mílovými kroky. Jedním z těchto frameworků, který vám umožňuje vyvíjet aplikace pro chytré telefony pomocí spousty známých HTML, JavaScript a CSS!, je PhoneGap. Aplikace napsaná s jeho pomocí je vhodná pro všechny populární platformy: iOS, Android, Windows Phone, Blackberry, WebOS, Symbian a Bada. Nebudete se muset učit specifika programování pro jednotlivé platformy (například Objective-C v případě iOS), ani se zabývat různými API a vývojovými prostředími. Vše, co je potřeba k vytvoření multiplatformní mobilní aplikace, je znalost HTML5 a speciální PhoneGap API. V tomto případě nebude výstupem hloupá HTML stránka „zarámovaná“ v rozhraní aplikace, ne! Rozhraní API tohoto rámce umožňuje používat téměř všechny funkce telefonu, které se používají při vývoji pomocí nativních nástrojů: přístup k akcelerometru, kompasu, fotoaparátu (nahrávání videa a fotografování), seznamu kontaktů, systému souborů, systému upozornění (standardní upozornění na telefonu) , úložiště atd. Konečně může taková aplikace bezproblémově přistupovat k jakékoli mezidoménové adrese. Nativní ovládací prvky můžete znovu vytvořit pomocí frameworků jako jQuery Mobile nebo Sencha a konečný program bude vypadat, jako by byl napsán v rodném jazyce (nebo téměř tak) na mobilním telefonu. Nejlépe je výše uvedené ilustrovat v praxi, to znamená napsat přihlášku, takže doporučuji začít hned cvičit. Sledujte čas – vše zabere sotva více než půl hodiny.

Co budeme tvořit

Vezměme iOS jako cílovou platformu – ano, ano, peníze jsou v AppStore a prozatím je nejlepší zpeněžit svůj vývoj tam :). Ale hned to upřesním: totéž, beze změn, lze udělat, řekněme, pro Android. Dlouho jsem přemýšlel o tom, který příklad vzít v úvahu, protože jsem nechtěl psát další nástroj pro sledování seznamu úkolů. Rozhodl jsem se tedy vytvořit aplikaci s názvem „Georemembrance“, navigační program, jehož účel lze popsat jednou větou: „Dejte mi vědět, až tu zase budu.“ AppStore má mnoho nástrojů, které vám umožní „zapamatovat si“ místo, kde uživatel zaparkoval auto. Je to skoro to samé, jen trochu jednodušší. Můžete ukázat na bod na mapě města, nastavit pro něj určitý poloměr a naprogramovat zprávu. Až příště spadnete do kruhu se zadaným poloměrem, aplikace vás na to upozorní a bod bude smazán. Budeme postupovat podle tohoto plánu: nejprve vytvoříme jednoduchou webovou aplikaci, otestujeme ji v prohlížeči a poté pomocí PhoneGap přeneseme na platformu iOS. Je velmi důležité prototypovat a testovat většinu kódu v prohlížeči na počítači, protože ladění aplikace na telefonu je mnohem obtížnější. Použijeme framework jQuery JS s jQuery Mobile (jquerymobile.com) jako framework a Google Maps v3 jako mapový engine. Aplikace se bude skládat ze dvou stránek: mapy a seznamu bodů.

  • Na mapě je umístěna značka vaší aktuální polohy. Kliknutím na mapu se vytvoří bod, ke kterému je připojena zpráva (např. „auto poblíž“). Bod lze smazat kliknutím na něj. K přesunutí značky osoby na mapě se používá geonavigační API.
  • Na stránce se seznamem bodů by mělo být další tlačítko „Smazat všechny body“ a vedle každého bodu by mělo být tlačítko „Smazat tento bod“. Pokud kliknete na prvek v seznamu, zobrazí se na mapě příslušný bod. Uživatelské nastavení a seznam bodů uložíme do localStorage.

rámce uživatelského rozhraní

jQuery Mobile samozřejmě není jediným frameworkem pro tvorbu mobilního rozhraní. Web PhoneGap má obrovský seznam knihoven a frameworků, které můžete použít (phonegap.com/tools): Sencha Touch, Impact, Dojo Mobile, Zepto.js atd.

Aplikační rámec

Ihned vysvětlím, proč budeme používat jQuery Mobile. Tato knihovna JS nám poskytuje hotové prvky rozhraní mobilních aplikací (co nejblíže těm nativním) pro různé platformy. Potřebujeme, aby výstupem byla mobilní aplikace a ne stránka z prohlížeče! Stáhněte si tedy nejnovější verzi JQuery Mobile (jquerymobile.com/download) a přeneste první soubory aplikace, které potřebujeme, do pracovní složky:

  • images/ (přesuňte sem všechny obrázky ze stejnojmenné archivní složky jq-mobile);
  • index.css;
  • index.html;
  • index.js;
  • jquery.js;
  • jquery.mobile.min.css;
  • jquery.mobile.min.js.

Je potřeba udělat zdroje převážně lokální, aby uživatel v budoucnu neplýtval mobilním internetem. Nyní vytvoříme rámec stránky v souboru index.html. Níže uvedený kód popisuje horní část stránky s mapou, nápisem „Geographic Reminder“ a tlačítkem „Body“.

Mapová stránka

Geovzpomínka

Body

Atribut stránky data-dom-cache="true" je nutný, aby se zajistilo, že nebude uvolněn z paměti. Tlačítko Body používá data-transition="pop", takže se stránka Seznam bodů otevře s efektem Pop-in. Více o tom, jak jsou stránky jQuery Mobile strukturovány, si můžete přečíst v dobré příručce (bit.ly/vtXX3M). Analogicky vytvoříme stránku se seznamem bodů:

Stránka se seznamem bodů

Smazat vše

Body

Mapa

Pro tlačítko „Map“ napíšeme také data-transition="pop", ale přidáme atribut data-direction="reverse", aby se stránka "Map" otevřela s efektem "Fade". Stejné atributy zapíšeme do šablony bodu. To je vše, náš rám je připraven.

Vytvoření aplikace

Nyní potřebujeme zobrazit mapu, k čemuž použijeme standardní Google Maps API, které používají miliony různých webů:

Var latLng = new gm.LatLng(this.options.lat, this.options.lng); this.map = new gm.Map(element, ( zoom: this.options.zoom, // Vyberte počáteční střed přiblížení: latLng, // Nastavte počáteční střed mapTypeId: gm.MapTypeId.ROADMAP, // Normal map disableDoubleClickZoom: true, // Vypnutí automatického přiblížení klepnutím/dvojitým kliknutím disableDefaultUI: true // Zakázání všech prvků rozhraní ));

Zde Gm je proměnná odkazující na objekt Map Google. Inicializační parametry jsem dobře okomentoval v kódu. Dalším krokem je nakreslení značky muže na mapu:

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

Adresa spritu osoby z panoramat Google je použita jako PERSON_SPRITE_URL. Jeho statická adresa je maps.gstatic.com/mapfiles/cb/mod_cb_scout/cb_scout_sprite_api_003.png . Uživatel bude přidávat body kliknutím na mapu, takže pro jejich kreslení budeme poslouchat událost kliknutí:

Gm.event.addListener(this.map, "click", function (event) ( self.requestMessage(function (err, message) ( // Metoda, která vrátí text zadaný uživatelem, pokud (chyba) vrátí); // Metoda přidá tečku do seznamu aktivních a // ji vykreslí na mapu self.addPoint(event.latLng, self.options.radius, zpráva self.updatePointsList()); falešný);

Poskytuji většinu kódu - zbytek hledejte na disku. Dále musíme naučit aplikaci pohybovat ikonou uživatele na mapě. V prototypu používáme Geolocation API (to, které se používá také v prohlížečích pro stolní počítače):

If (navigator.geolocation) ( // Zkontrolujte, zda prohlížeč podporuje geolokační funkci gpsSuccess(pos) ( var lat, lng; if (pos.coords) ( lat = pos.coords.latitude; lng = pos.coords.longitude; ) else ( lat = pos.zeměpisná šířka; lng = pos.longitude; ) self.movePerson(new gm.LatLng(lat, lng)); // Přesune ikonu uživatele ) // Každé tři sekundy požadujeme aktuální // polohu uživatel window.setInterval (funkce () ( // Žádost o aktuální pozici navigator.geolocation.getCurrentPosition(gpsSuccess, $.noop, ( enableHighAccuracy: true, maximumAge: 300000 )); , 3000);

Metoda movePerson používá jednoduchou proceduru getPointsInBounds() ke kontrole, zda je uživatel v nějakém aktivním bodě. Poslední otázka - kam uložit seznam bodů? HTML5 zavedlo možnost používat localStorage, takže to nezanedbáme (nechám vás, abyste na tyto části kódu přišli sami, což jsem dobře okomentoval). Takže aplikace běžící v prohlížeči je připravena!

Spuštění webové aplikace

Jak jsem již řekl, ladění je většinou nutné provádět na počítači. Pro testování webových aplikací na počítači je nejvhodnější prohlížeč Safari nebo Chrome. Po odladění v těchto prohlížečích si můžete být jisti, že vaše aplikace nebude fungovat v prohlížeči mobilního telefonu. Oba tyto prohlížeče jsou kompatibilní s většinou mobilních webových prohlížečů, protože jsou postaveny na enginu WebKit stejně jako ony. Po odstranění všech chyb můžete přistoupit ke spuštění mobilní webové aplikace přímo ve vašem telefonu. Chcete-li to provést, nakonfigurujte svůj webový server (dokonce i Denwer nebo XAMPP) tak, aby obsluhoval vytvořenou stránku, a otevřete ji v prohlížeči mobilního telefonu. Aplikace by měla vypadat podobně jako na obrázku. Zde je důležité pochopit, že budoucí mobilní aplikace sestavená pro mobilní platformu využívající PhoneGap bude vypadat téměř identicky, až na to, že se na obrazovce nebude zobrazovat navigační lišta prohlížeče. Pokud je vše v pořádku, můžete ze stránky začít vytvářet plnohodnotnou iOS aplikaci. Vezměte prosím na vědomí, že jsme se do této chvíle ani nedotkli PhoneGap a IDE pro mobilní vývoj.

Příprava

Abyste mohli sestavit aplikaci pro iOS, potřebujete počítač s operačním systémem Mac OS 10.6+ (nebo virtuální stroj na Mac OS 10.6) a také vývojové prostředí Xcode s nainstalovaným iOS SDK. Pokud sadu SDK nainstalovanou nemáte, budete si muset z webu společnosti Apple stáhnout obraz disku, který obsahuje Xcode a iOS SDK (developer.apple.com/devcenter/ios/index.action). Mějte na paměti, že obrázek váží přibližně 4 GB. Navíc se budete muset zaregistrovat na webu Apple jako vývojář (pokud se nechystáte publikovat svou aplikaci v AppStore, pak lze tento požadavek obejít). Pomocí této sady můžete vyvíjet aplikace v nativním jazyce iOS Objective-C. Rozhodli jsme se to ale obejít a použít PhoneGap, takže ještě musíme nainstalovat balíček PhoneGap pro iOS. Stačí si stáhnout archiv z offsite (https://github.com/callback/phonegap/zipball/1.2.0), rozbalit a spustit instalátor ve složce iOS. Po dokončení instalace by se v nabídce projektů Xcode měla objevit ikona PhoneGap. Po spuštění budete muset vyplnit několik formulářů, ale velmi brzy uvidíte pracovní plochu IDE s vaší první aplikací. Chcete-li zkontrolovat, zda vše funguje, klikněte na tlačítko Spustit - měl by se spustit emulátor iPhone/iPad s aplikací šablony PhoneGap. Sestavený program vygeneruje chybu, že index.html nebyl nalezen - to je normální. Otevřete složku, do které jste uložili soubory primárního projektu, a najděte v ní podsložku www. Přetáhněte ji do editoru, klikněte na ikonu aplikace v seznamu vlevo a v okně, které se zobrazí, vyberte „Vytvořit odkazy na složky pro všechny přidané složky“. Pokud program spustíte znovu, vše by mělo fungovat. Nyní můžeme zkopírovat všechny soubory našeho prototypu do složky www. Je čas vyladit náš prototyp, aby fungoval na smartphonu pomocí zpracování PhoneGap.

Přenos prototypu

Nejprve musíte do svého indexového souboru zahrnout phonegap-1.2.0.js. PhoneGap umožňuje omezit seznam hostitelů dostupných pro návštěvu. Navrhuji takový „bílý seznam“ zřídit hned. V nabídce projektu otevřete Supporting Files/PhoneGap.plist, najděte položku ExternalHosts a přidejte do ní následující hostitele, ke kterým bude naše aplikace přistupovat (jedná se o servery Google Maps): *.gstatic.com, *.googleapis.com, mapy .google. Pokud je neuvedete, program zobrazí v konzoli varování a mapa se nezobrazí. K inicializaci webové verze naší aplikace jsme použili událost DOMReady nebo pomocníka jQuery: $(document).ready(). PhoneGap generuje událost deviceready, která označuje, že je mobilní zařízení připraveno. Doporučuji použít toto:

Document.addEventListener("deviceready", funkce () ( new Notificator($("#map-canvas")); // Pokud uživatel nemá internet, // upozorní ho na to, pokud (navigator.network.connection. type = == Connection.NONE) ( navigator.notification.alert("Žádné připojení k internetu", $.noop, TITLE); ) ), false);
Zabráníme posouvání: document.addEventListener("touchmove", funkce (událost) ( event.preventDefault(); ), false);

Poté nahradíme všechna upozornění a potvrdíme hovory nativními hovory, které nám PhoneGap poskytuje:

Navigator.notification.confirm("Odstranit bod?", funkce (id_tlačítka) ( if (id_tlačidla === 1) ( // stisknuto tlačítko OK self.removePoint(bod); ) ), TITLE);

Poslední věc, kterou musíme změnit, je blok kódu, který pohybuje ikonou uživatele po mapě. Náš současný kód také funguje, ale funguje méně optimálně (přesune ikonu, i když se souřadnice nezměnily) a neposkytuje tak bohatá data jako jeho protějšek PhoneGap:

Navigator.geolocation.watchPosition(funkce (pozice) ( self.movePerson(new gm.LatLng(position.coords.latitude, position.coords.longitude)); ), function (error) ( navigator.notification.alert("code: " + error.code + "\nzpráva: " + error.message, $.noop, TITLE); ), ( četnost: 3000 ));

Tento kód je elegantnější – generuje událost pouze při změně souřadnic. Klikněte na tlačítko Spustit a ujistěte se, že aplikace, kterou jsme právě vytvořili, perfektně funguje v simulátoru zařízení iOS! Je čas začít spouštět na skutečném zařízení.

Spustit na zařízení

Připojte svůj iPhone, iPod nebo iPad k počítači se systémem Xcode. Program detekuje nové zařízení a požádá o povolení k jeho použití pro vývoj. Nemá smysl ji odmítat :). Dovolte mi ještě jednou zopakovat: Abyste mohli spouštět psanou aplikaci na iOS, musíte být autorizovaným iOS vývojářem (jinými slovy být přihlášen k odběru iOS Developer Programu). To vám bude vadit pouze v případě, že vyvíjíte aplikace pro produkty Apple s jinými platformami (Android, Windows Phone) je vše mnohem jednodušší. Studenti na vysoké škole mají díky některým výhodám šanci získat přístup k programu zdarma. Všichni ostatní musí za účast v programu zaplatit 99 USD ročně. Apple vydá certifikát, kterým můžete podepsat svůj kód. Podepsanou aplikaci lze spustit na iOS a distribuovat v App Store. Pokud nejste student, a přesto je vám líto 99 dolarů za nevinné experimenty, pak existuje další způsob – oklamat systém. Můžete si vytvořit self-signed certifikát pro ověření kódu a spuštění mobilního programu na jailbreaknutém iOS zařízení (nebudu se tím zdržovat, protože vše je co nejpodrobněji popsáno v tomto článku: bit.ly/tD6xAf ). Tak či onak se na displeji vašeho mobilního telefonu brzy zobrazí fungující aplikace. Zastavte stopky. jak dlouho ti to trvalo?

Jiné platformy

Kromě PhoneGap existují další platformy, které umožňují vytvářet mobilní aplikace bez použití nativních jazyků. Pojďme si vyjmenovat ty nejlepší hráče.

Appcelerator Titanium (www.appcelerator.com).

Titanium umí vytvářet aplikace primárně pro Android a iPhone, ale také tvrdí, že podporuje BlackBerry. Kromě samotného rámce poskytuje projekt sadu nativních widgetů a IDE. Aplikace na Titanium můžete vyvíjet zdarma, ale budete muset platit za podporu a další moduly (od 49 $ měsíčně). Cena některých modulů třetích stran dosahuje 120 USD ročně. Vývojáři Appcelerator Titanium tvrdí, že na jejich frameworku bylo napsáno více než 25 tisíc aplikací. Zdrojový kód projektu je distribuován pod licencí Apache 2.

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

Tato technologie podporuje hlavní platformy – iOS a Android. Framework je zaměřen hlavně na vývoj her. Vývojáři samozřejmě prohlašují vysoce kvalitní optimalizaci na OpenGL. Platforma nemá bezplatnou verzi a cena je poměrně strmá: 199 $ ročně za licenci pro jednu platformu a 349 $ ročně pro iOS a Android. Corona nabízí vlastní emulátory IDE a zařízení. Aplikace Corona jsou napsány v jazyce podobném JavaScriptu.

Závěr

Vytvořili jsme jednoduchou mobilní webovou aplikaci a v několika jednoduchých krocích ji přenesli na platformu iOS pomocí PhoneGap. Nenapsali jsme jediný řádek kódu Objective-C, ale dostali jsme program slušné kvality, který strávil minimum času portováním a učením PhoneGap API. Pokud preferujete jinou platformu, například Android nebo Windows Mobile 7, pak si stejně snadno můžete naši aplikaci beze změn sestavit i pro tyto platformy (pro každou z nich existuje dobrý úvodní manuál a video tutoriál: phonegap.com/start) . Pro ověření životaschopnosti platformy se můžete podívat na hotové aplikace na PhoneGap, které vývojáři technologie shromáždili ve speciální galerii (phonegap.com/apps). PhoneGap je vlastně ideální platforma pro vytvoření alespoň prototypu budoucí aplikace. Jeho hlavními výhodami jsou rychlost a minimální náklady, které aktivně využívají startupy, které jsou ve všech ohledech omezené zdroji. Pokud aplikace selže a z nějakého důvodu již nejste spokojeni s vnitřními prvky HTML+JS, můžete aplikaci vždy přenést do nativního jazyka. Nemohu si pomoci, ale říci, že PhoneGap byl původně vyvinut společností Nitobi jako open source projekt (úložiště se nachází na GitHubu: github.com/phonegap). Zdrojový kód zůstane nadále otevřený, i když společnost Adobe Nitobi získala loni v říjnu. Musím říct, jaké má projekt s podporou takového giganta vyhlídky?

Pojem „tajné kódy pro Android“ označuje takové kombinace znaků, které byly původně určeny pro testování zařízení, na kterých je tento operační systém nainstalován.

S jejich pomocí vývojáři testují telefony a tablety, než je pošlou do prodeje. A jejich celkový počet dosahuje několika desítek.

Zadání určité sekvence umožňuje získat data nebo provádět akce, které jsou pro běžné uživatele nedostupné.

Obsah:

Vlastnosti „tajných“ šifer

Mnoho uživatelů, kteří se potýkají s potřebou používat takové příkazy, se může ptát na důvod jejich utajení.

Za prvé, kombinace symbolů a čísel dostaly toto jméno kvůli skutečnosti, že je většina majitelů nepotřebuje.

A o těchto příkazech není v návodu ani zmínka.

Chcete-li některý z nich používat, musíte v číselníku zadat aplikaci „Telefon“ (zelené nebo modré sluchátko na hlavní obrazovce).

Tablety bez 3G modulu tuto možnost standardně nemají.

A aby bylo možné spustit kódy, uživatel si musí stáhnout speciální aplikaci a najít ji ve vyhledávání „Dialer“.

Kombinace pro jakýkoli gadget v OS Android

Informační sekvence umožňují získat data o různých vlastnostech zařízení a jeho jednotlivých prvků:

  • *#06# – o čísle IMEI;
  • *#*#4636#*#* – o baterii a Wi-Fi síti;
  • *#*#44336#*#* – o firmwaru, včetně čísla CSC a data sestavení;
  • *#*#232338#*#* – o adrese bezdrátové sítě;
  • *#34971539# – o fotoaparátech gadgetu;
  • *#*#1234#*#* (ačkoli *#2222# funguje mnohem častěji) – o firmwaru.

Při vstupu *#*#1111#*#* Informace o verzi softwaru můžete získat na obrazovce.

Zavedení *#*#2222#*#* zobrazuje informace o desce.

Informace o verzi snímače zobrazí kód *#*#2663#*#* , o RAM – *#*#3264#*#* a data adresy Bluetooth jsou *#*#232337#*#*.

Příkazy pro ověřování a testy

Pro testování zařízení existuje samostatná skupina:

  • Kontrola služby Google Talk zajišťuje konzistenci *#*#8255#*#* ;
  • zkontrolovat funkci displeje - *#*#0*#*#* ;
  • pro testování různých částí (od kamery po mikrofon) – *#0*# ;
  • pro audio test - dva najednou: *#*#0673#*#* A *#*#0289#*#* .

Fungování podsvícení a vibrací můžete zkontrolovat zadáním kombinace *#*#0842#*#* .

Testováno pomocí příkazu *#*#232339#*#* a doplňkové *#*#526#*#* .

Kontrola se provádí odesláním příkazů *#*#1472365#*#* (pro běžný test) popř *#*#1575#*#* .

Síť Bluetooth se kontroluje přes *#*#232331#*#* .

Několik dalších užitečných příkazů vám umožní otestovat výkon obrazovky ( *#*#2664#*#* ), detektory pohybu ( *#*#0588#*#* ) a GSM modul ( *#*#7262626#*#* ).

Vstup *#197328640# zajišťuje přechod do servisního režimu.

Nebezpečné kombinace

Existuje několik možností, jejichž zavedením můžete provést závažné změny systému bez možnosti návratu do původního stavu.

Mezi ně patří kupř *#*#7780#*#* A *2767*3855# .

První zajistí resetování všech nastavení a odstranění uživatelem nainstalovaných aplikací, druhý příkaz vede ke kompletní reinstalaci systému.

Kombinace *#*#7594#*#* umožňuje zbavit se nabídky vypnutí - když stisknete příslušné tlačítko, nebo se automaticky vypne, aniž by se uživatel na něco zeptal.

Výběr kódu *#*#8351#*#* potřebné k povolení registrace hlasového vytáčení a *#*#8350#*#* – pro vypnutí tohoto režimu.

Následné #*5376# slouží k mazání zpráv a několik kombinací pro typ Android #*3876# , #*3851# A #*2562# restartujte gadget.

Speciální kódy pro produkty jednotlivých výrobců

Existuje několik kombinací, které jsou vhodné pouze pro určité modely nebo značky gadgetů. Lze je shrnout do malé tabulky.

Tabulka 1. kódy pro určité modely mobilních zařízení s OS Android.
Make, model Tým Akce
Sony **05***# odblokování PUK kódu
LG, G3 3845#*855# vstup do servisního menu
Samsung, Galaxy S4 *#0011# přejděte do nabídky
HTC 3424#

33284#

zahájení diagnostického procesu

informace o stavu sítě

Motorola *#*#786#*#*

*#*#2486#*#*

resetujte všechna nastavení

přejděte do vestavěného menu

Kromě nich existují další příkazy. S jejich nalezením vám pomůže speciální aplikace Secret Codes od PlayMarket. S jeho pomocí můžete odhalit i ty, které v seznamu nejsou.

Měli byste vědět: Ne všechny sekvence, ani ty univerzální, budou fungovat na každém smartphonu. Použití tajné kombinace může být omezeno samostatně přeinstalovaným operačním systémem převzatým nikoli z oficiálních stránek, ale ze zdrojů třetích stran.




Nahoru