Curso202223/PMDM/apuntes_android.md

2.2 KiB

Apuntes Android Studio (Generales)

Archivo Manifest (AndroidManifest.xml)

El propósito de éste archivo es aportar información al compilador, al sistema operativo y a la tienda de aplicaciones. Su ubicación es en la raíz del proyecto.

Obligatoriamente debe contener:

  • Componentes de la app (activities, services, etc)
    • Intent-filter, le especifica al sistema como debe interactuar con esa activity, en función de atributo que declaremos en el elemento action.
  • Permisos necesarios
  • Hardware y software requeridos para su funcionamiento (API)

Ejemplo Manifest

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          xmlns:tools="http://schemas.android.com/tools">
    <!-- Componentes de la app -->
    <application>
        <activity>
            <intent-filter>
                <action/>
                <category/>
            </intent-filter>
        </activity>
        <service></service>
        <receiver></receiver>
        <provider></provider>
    </application>
    <!-- Permisos necesarios -->
    <uses-permission android:name="PERMISSION-TO-GET"/>
    <!-- Hardware requerido -->
    <uses-feature android:name="HW-TO-USE" android:required="true"/>
    <!-- Versiones de API en las que funciona la app -->
    <uses-sdk android:[min|target|max]SdkVersion="1"/>
</manifest>

Documentación oficial

Placeholders

Para usar placeholders en lugar de hacer hardcode en la lógica de java, se usan ficheros de recursos. En ellos se codifican los strings incluyendo los placeholders.

Al llamar al método getString() de la clase abstracta Context, se le pasa como argumento la referencia al recurso a usar, y el dato que va a sustituir el placeholder del recurso.

Ejemplo placeholder

string.xml

<resources>
    <string name="texto_completo">Ejemplo de %1$s</string>
</resources>

code.java

String sustituto_placeholder = "Programación";
System.out.println(getString(R.string.texto_completo, sustituto_placeholder));

Salida

Ejemplo de Programación

Documentacion oficial