Professional Documents
Culture Documents
IET820 Programacin 2
Paul Vicioso, M.S. Universidad Tecnolgica de Santiago ctu!re de 20"2 #ctuali$ado% &oviem!re 20"'
Qu es Android?
#ndroid es un sistema o(erativo !asado en )inu* dise+ado (rinci(almente (ara dis(ositivos mviles con (antalla t,ctil, como tel-.onos inteligentes o ta!letas, inicialmente desarrollado (or #ndroid, Inc. /oogle res(ald econmicamente 0 m,s tarde com(r esta em(resa en 2001. 23i4i(edia5
Componentes de Android
6e* :om(iler
=*ml> #ndroidMani.est.*ml
=str>
.a(4
@esources
7
Activities
)as actividades 2#ctivities5 re(resentan el com(onente (rinci(al de la inter.a$ gr,.ica de una a(licacin #ndroid. Se (uede (ensar en una actividad como el elemento an,logo a una ventana en cualAuier otro lengua<e visual.
Activity (continuacin
public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ... } @Override protected void onPause() { super.onPause(); ... } ... }
!ervices
)os servicios son com(onentes sin inter.a$ gr,.ica Aue se e<ecutan en segundo (lano. En conce(to, son e*actamente iguales a los servicios (resentes en cualAuier otro sistema o(erativo. )os servicios (ueden reali$ar cualAuier ti(o de accin, (or e<em(lo actuali$ar datos, lan$ar noti.icaciones, o incluso mostrar elementos visuales 2(.e<. #ctivities5 si se necesita en algBn momento la interaccin con del usuario. )a a(licacin Aue est, e<ecutando la mBsica en el .ondo es un e<em(lo de un servicio, aBn cuando no tiene inter.a$, sigue .uncionando.
Content Providers
Un :ontent Provider es el mecanismo Aue se ?a de.inido en #ndroid (ara com(artir datos entre a(licaciones. Mediante estos com(onentes es (osi!le com(artir determinados datos de nuestra a(licacin sin mostrar detalles so!re su almacenamiento interno, su estructura, o su im(lementacin. 6e la misma .orma, nuestra a(licacin (odr, acceder a los datos de otra a(licacin a trav-s de los :ontent Provider Aue se ?a0an de.inido. Por e<em(lo, el sistema #ndroid (ro(orciona un :ontent Provider Aue gestiona la in.ormacin de contactos del usuario. :omo tal, cualAuier a(licacin con los (ermisos adecuados (uede consultar (arte del :ontent Provider 2como ContactsContract.Data5 (ara leer 0 escri!ir in.ormacin so!re una (ersona en (articular.
Intents
Un intent es el elemento !,sico de comunicacin entre los distintos com(onentes #ndroid. Se (ueden entender como los mensa<es o (eticiones Aue son enviados entre los distintos com(onentes de una a(licacin o entre distintas a(licaciones. Mediante un intent se (uede mostrar una actividad desde cualAuier otra, iniciar un servicio, enviar un mensa<e !roadcast, iniciar otra a(licacin, etc.
Intent intent = new Intent(this, AnotherClass.class); EditText editText = (EditText) findViewById(R.id.edit_message); String message = editText.getText().toString(); intent.putExtra(EXTRA_MESSAGE, message); startActivity(intent);
#roadcast $eceivers
Un !roadcast receiver es un com(onente destinado a detectar 0 reaccionar ante determinados mensa<es o eventos glo!ales generados (or el sistema 2(or e<em(lo% C;aterDa !a<aE, CSMS reci!idoE, CTar<eta S6 insertadaE, F5 o (or otras a(licaciones 2cualAuier a(licacin (uede generar mensa<es 2intents, en terminologDa #ndroid5 !roadcast, es decir, no dirigidos a una a(licacin concreta sino a cualAuiera Aue Auiera escuc?arlo5.
%id&ets
)os Gidgets son elementos visuales, normalmente interactivos, Aue (ueden mostrarse en la (antalla (rinci(al 2?ome screen5 del dis(ositivo #ndroid 0 reci!ir actuali$aciones (eridicas. Permiten mostrar in.ormacin de la a(licacin al usuario directamente so!re la (antalla (rinci(al.
%id&ets (cont"
Vie'
)os o!<etos vieG son los com(onentes !,sicos con los Aue se constru0e la inter.a$ gr,.ica de la a(licacin, an,logo (or e<em(lo a los controles de 9ava o .&ET. 6e inicio, #ndroid (one a nuestra dis(osicin una gran cantidad de controles !,sicos, como cuadros de te*to, !otones, listas des(lega!les o im,genes, aunAue tam!i-n e*iste la (osi!ilidad de e*tender la .uncionalidad de estos controles !,sicos o crear nuestros (ro(ios controles (ersonali$ados.
Archivo Android(ani)est"*ml
:ontiene la de.inicin en HM) de los as(ectos (rinci(ales de la a(licacin, como (or e<em(lo su identi.icacin 2nom!re, versin, icono, F5, sus com(onentes 2(antallas, mensa<es, F5, o los (ermisos necesarios (ara su e<ecucin.
(enus
)os menBs son una (arte esencial de casi cualAuier sistema o(erativo. En los sistemas mviles donde est, limitado el es(acio de la (antalla, <uegan un (a(el aBn m,s im(ortante. #ndroid (ro(orciona mecanismos similares (ara los menBs como lo ?ace (ara otros elementos visuales, (or lo Aue es (osi!le se(arar el cdigo de la a(licacin de la de.inicin del menB usando HM).
+ipos di)erentes de men,sMens Principales. )os m,s ?a!ituales, a(arecen en la $ona in.erior de la (antalla al (ulsar el !otn ImenBJ del tel-.ono. Submens. Son menBs secundarios Aue se (ueden mostrar al (ulsar so!re una o(cin de un menB (rinci(al. Mens Contextuales. Ktiles en muc?as ocasiones, a(arecen al reali$ar una (ulsacin larga so!re algBn elemento de la (antalla.
TYPE_GYROSCOPE
TYPE_ LIGHT
value/01 - Illumination
(easured in lu*" +he !ensor (ana&er includes a set o) constants representin& di))erent standard illuminations o) the )orm !ensor(ana&er"2I6;+89 Am<ient ma&netic )ield measured in microteslas (=+ "
TYPE_MAGNETIC_FIELD
value/01 - 2ateral value/31 - 2on&itudinal value/41 - Vertical value/01 - A:imuth value/31 - $oll value/41 - Pitch value/01 - Pressure value/01 - Distance value/01 - +emperature
TYPE_ORIENTATION
3 3 3
HM) 2#ndroidMani.est.*ml5
=intent8.ilter> =action android%nameLMandroid.intent.action.VIE3M N> =categor0 android%nameLMandroid.intent.categor0.6EO#U)TMN> =data android%sc?emeLM.ooM android%?ostLM!ar.e*am(le.comM N> =Nintent8.ilter>
URI
tel%(?onePnum!er tel%(?onePnum!er voicemail% geo%lat,long geo%0,0QALaddress ?tt(%NNurl ?tt(s%NNurl (lainPte*t
Meaning
(ens (?one a((lication and calls (?onePnum!er. (ens (?one a((lication and dials 2!ut doesnJt call5 (?onePnum!er. (ens (?one a((lication and dials 2!ut doesnJt call5 t?e voice mail num!er. (ens t?e ma(s a((lication centered on 2lat, long5. (ens t?e ma(s a((lication centered on t?e s(eci.ied address. (ens t?e !roGser a((lication to t?e s(eci.ied address. (ens t?e !roGser a((lication to t?e s(eci.ied address. (ens t?e !roGser a((lication and uses /oogle searc? .or given string.