2011-01-30 17 views
54

He estado desarrollando durante bastante tiempo y ahora estoy tratando de hacer una aplicación que reemplace la casa original (por ejemplo, HTC sense).Cómo hacer un lanzador

Necesito que la aplicación se abra cuando el usuario presiona el botón de inicio en su teléfono.

Así que, básicamente, es un reemplazo del hogar.

¿Alguien sabe cómo hacerlo?

Respuesta

18

Puede consultar el código fuente del Launcher y el proyecto Launcher2 utilizado en Android.

+0

Primer enlace está muerto –

14

Son un ejemplo del equipo de Android, si ya ha cargado Muestras, puede importar Muestra de reemplazo de pantalla de inicio siguiendo estos pasos.

Archivo> Nuevo> Otros> Android> Proyecto de Ejemplo Android> Android xx> Inicio> Finalizar

Pero si usted no tiene muestras, y luego descargarlo haciendo próximos pasos

Windows> Android SDK Manager> elige "Muestra para SDK" para SDK usted lo necesita> Instalar paquete> Aceptar licencia> Instalar

+9

El enlace en las ventanas de respuesta aceptadas ya no funciona, simplemente redirige a la página de muestras. Esta respuesta fue útil para mí. ¡Y no sabía de esta manera simple de importar proyectos de muestra en el espacio de trabajo! – Ena

60

Simplemente desarrolle una aplicación normal y luego agregue un par de líneas al archivo de manifiesto de la aplicación.

Primero debe añadir el siguiente atributo a su actividad:

  android:launchMode="singleTask" 

A continuación, agregue dos categorías para el filtro de intenciones:

  <category android:name="android.intent.category.DEFAULT" /> 
      <category android:name="android.intent.category.HOME" /> 

El resultado podría ser algo como esto:

<?xml version="1.0" encoding="utf-8"?> 
    <manifest xmlns:android="http://schemas.android.com/apk/res/android" 
     package="com.dummy.app" 
     android:versionCode="1" 
     android:versionName="1.0" > 

     <uses-sdk 
      android:minSdkVersion="11" 
      android:targetSdkVersion="19" /> 

     <application 
      android:allowBackup="true" 
      android:icon="@drawable/ic_launcher" 
      android:label="@string/app_name" 
      android:theme="@style/AppTheme" > 
      <activity 
       android:name="com.dummy.app.MainActivity" 
       android:launchMode="singleTask" 
       android:label="@string/app_name" > 
       <intent-filter> 
        <action android:name="android.intent.action.MAIN" /> 
        <category android:name="android.intent.category.LAUNCHER" /> 
        <category android:name="android.intent.category.DEFAULT" /> 
        <category android:name="android.intent.category.HOME" /> 
       </intent-filter> 
      </activity> 
     </application> 

    </manifest> 

¡Es así de simple!

+0

tan simple, ¡una manera genial de hacer que una aplicación arranque primero! –

+0

tengo la aplicación ahora en Google Play, pero el problema es que esta aplicación no se actualiza automáticamente ¿Puede enfrentar este problema otra actualización de las aplicaciones? – PankajAndroid