Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Aké sú výnimky Androida?

Výnimky Android sú chyby runtime, ktoré narušujú normálny tok vykonávania aplikácie. Sú podtriedou triedy „hoditeľa“ v Java (a Kotlin, ktorá bez problémov interopetuje s manipuláciou s výnimkou Javy). Signujú, že sa stalo niečo neočakávané, čo vyžaduje, aby aplikácia zvládla situáciu alebo elegantne ukončila (aby sa predišlo nehodám).

Android nemá jedinečný súbor výnimiek * špecifických * pre samotnú platformu Android, ale skôr využíva výnimky Java a predstavuje niektoré bežne vyskytujúce situácie v prostredí Android. Tieto môžu byť všeobecne kategorizované ako:

1. Bežné výnimky Java: Pri vývoji systému Android je relevantné aj veľa štandardných výnimiek Java:

* `nullPointerexception` (npe): Najbežnejšia výnimka. Vyskytuje sa, keď sa pokúsite získať prístup k členovi (metóde alebo poľa) objektu, ktorý je v súčasnosti „null“.

* `indexoutofBoundSexception`: Hodnote sa, keď sa pokúsite získať prístup k prvku poľa alebo zoznamu pomocou indexu, ktorý je mimo hraníc (napr. Pokus o prístup k 10. prvku poľa 5-prvkov).

* `nelegalArgumentException`: Vyhodený, keď metóda dostane argument, že nie je navrhnutý na zvládnutie.

* `nelegalStateException`: Vyhodený, keď sa metóda nazýva v nevhodnom čase v životnom cykle objektu.

* `classCastException`: Vyhodené, keď sa pokúsite vrhnúť objekt k typu, s ktorým nie je kompatibilný.

* `aritmeticexception`: Vyskytuje sa počas aritmetických operácií, ako je delenie nula.

* `ioException`: Vyskytuje sa počas vstupných/výstupných operácií (napr. Čítanie zo súboru alebo siete).

* `runtimeException`: Základná trieda pre mnohé nezaškrtnuté výnimky (výnimky, ktoré nemusia byť výslovne riešené v kóde). `NullPointeRexception` a` indexoutOfBoundSException` sú príklady.

2. Výnimky špecifické pre Android (alebo situácie, ktoré vedú k spoločným výnimkám): Aj keď to nie je zreteľná výnimka *triedy *, ide o bežné chybové scenáre vo vývoji Android:

* Problémy s sieťou: Výnimky týkajúce sa problémov s pripojením siete sa často prejavujú ako `ioException` alebo podtriedy (napr.„ SocketTimeOutException`, `neznámehostexception`).

* Problémy: Ak sa vaša aplikácia snaží získať prístup k zdroju (napríklad fotoaparátu alebo umiestnenia) bez potrebných povolení, môže viesť k „zabezpečeniu“ alebo k operácii jednoducho zlyháva ticho.

* Problémy s zdrojmi: Pokus o prístup k zdrojom, ktoré neexistujú (napr. Súbor rozloženia alebo kresbateľný), môže viesť k „Resources.NotfoundException“.

* Problémy s súbežnosťou: Problémy súvisiace s multi-threadingom (napr. Rasové podmienky, mŕtvych zámkov) sa často prejavujú ako „nelegálnestateException“ alebo iné neočakávané správanie.

* Problémy s životným cyklom: Metódy volania na aktivite alebo inej zložke v nesprávnom bode jeho životného cyklu môže mať za následok „nelegalStateException“.

* Databázové problémy: Chyby interagujúce s databázami (napríklad SQLite) môžu viesť k `Sqlexception`.

* nízka pamäť: Keď je systém nízka na pamäti, môže to viesť k nehodám, často nepriamo prostredníctvom `outofmemoryerror` (aj keď technicky nie výnimkou rovnakým spôsobom ako ostatní).

Manipulácia s výnimkami:

Android, podobne ako Java, používa bloky `Try-Catch` na zvládnutie výnimiek:

`` `Java

skús {

// kód, ktorý by mohol vyhodiť výnimku

int výsledok =10/0; // To spôsobí aritmeticexception

} catch (aritmeticexception e) {

// Zvládnite aritmeticexception

Log.e („MyApp“, „Division by Zero!“, E);

} catch (výnimka e) {// zachytí akúkoľvek inú výnimku

Log.e ("myApp", "vyskytla sa chyba:" + e.getMessage (), e);

} nakoniec {

// kód, ktorý sa vždy vykonáva, bez ohľadu na to, či sa vyskytla výnimka. (napr. Záverečné zdroje)

}

`` `

Nezabudnite primerane zvládnuť výnimky, aby ste zabránili zlyhaniu vašej aplikácie a poskytli lepšiu používateľskú skúsenosť. Správne spracovanie chýb je rozhodujúce pre robustný vývoj aplikácií pre Android.

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené