2012-04-18 5 views
5

NOTA: NO LO PRUEBE DIRECTAMENTE CON EL DISPOSITIVO ECLIPSE. POR FAVOR generar el archivo APK PRIMERA TARDE copia que .apk en su memoria DISPOSITIVO DE ENTONCES instalarlo desde allíLa aplicación se comporta de dos maneras diferentes cuando el usuario elige abrir y listo en el momento de la instalación en android.so ¿qué es el resion?

Aplicación flujo

1) abierta pantalla de carga (aparecerá 5 seg) -----> pantalla abierta título Noticias

2) desde la pantalla de noticias cuando el usuario haga clic en el botón de retroceso i anular

public void onBackPressed() { 
     moveTaskToBack(true); 
} 

3) cuando el usuario abra de nuevo su solicitud que se abren directamente a su pantalla de título noticias

este es mi requisito y lo hice con éxito cuando el usuario eligió case1 en el momento de la instalación que se especifica en los siguientes casos

Creo la aplicación y la cargo al servidor. Luego en mi galaxy 2.2 escribo url en un navegador y descargo apk. Después de su descarga finalizada, lo instalo. Cuando se termina Instalar Tengo dos opciones

Caso 1: - Hecho

el caso 2: - Abrir

cuando pulso aplicación Open abierto con éxito por primera vez. Cuando vuelvo a hacer clic en la aplicación (segunda vez), vuelvo a abrir la pantalla Cargando.

Pero cuando elijo Hecho y luego accedo a él a través del menú de la Aplicación ¡funciona bien! entonces esta elección determina cómo se comportará la aplicación más tarde? ¿por qué? ¿cómo? Estoy desconcertado

Ahora estoy subir algunos ejemplos de código sencillo

Actividad 1: HelloWorldActivity.java

este botón contener simple denominada como "primera pantalla"

package com.hb.Screens; 

import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 
import android.widget.TextView; 

public class HelloWorldActivity extends Activity { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     Button tv=(Button) findViewById(R.id.btn); 
     tv.setText("First screen"); 
     tv.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View v) { 
       startActivity(new Intent(HelloWorldActivity.this, secondScreen.class)); 
       HelloWorldActivity.this.finish(); 
      } 
     }); 
    } 

} 

Actividad 2: secondScreen.java

Este contener botón simple denominada como "segunda pantalla"

package com.hb.Screens; 

import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.widget.Button; 

public class secondScreen extends Activity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     setContentView(R.layout.main); 
     Button tv = (Button) findViewById(R.id.btn); 
     tv.setText("Second screen"); 
    } 

    @Override 
    public void onBackPressed() { 
     moveTaskToBack(true); 
    } 

    @Override 
    protected void onResume() { 
     super.onResume(); 

    } 
} 

Este es mi archivo de manifiesto

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
     package="com.hb.Screens" 
     android:versionCode="1" 
     android:versionName="1.0"> 
    <uses-sdk android:minSdkVersion="4" /> 

    <application android:icon="@drawable/icon" android:label="@string/app_name"> 
     <activity android:name=".HelloWorldActivity" 

        android:label="@string/app_name"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity android:name=".secondScreen"></activity> 
    </application> 
</manifest> 

Respuesta

0

abierto es simplemente, poner en marcha la aplicación recién instalada

y

Hecho es, simplemente regrese a donde está su última ubicación.

Ambos no tienen nada que ver con el comportamiento de la aplicación.

+0

Si bien eso puede ser cierto, estamos viendo el mismo comportamiento cuando la aplicación tiene un comportamiento diferente cuando se ejecuta a través de "Abrir" desde los menús de instalación contra ser instalado y luego se ejecuta desde la carpeta de aplicaciones. Específicamente (prueba en Android 4) notamos que, en el caso de que la aplicación se ejecute mediante "Hecho" desde el instalador, cuando regresemos a la aplicación después de presionar Inicio, siempre volvemos a la vista inicial sin importar donde estábamos cuando presionamos a casa Sin embargo, si ejecutamos la aplicación desde la carpeta de aplicaciones, el ciclo Inicio/Regreso a la aplicación nos lleva de regreso a donde estábamos cuando presionamos el inicio. –

1

Si ha declarado más de una actividad como actividad de inicio, elimínela. Si tiene dos actividades de iniciador en el manifiesto, entonces puede emitir. Tuve problemas para bloquear cuando he declarado más de una actividad como actividad de inicio.

Open es la posibilidad de abrir directamente la aplicación cuando finaliza la instalación.

Done es la opción si no tiene previsto abrir la aplicación después de la instalación.

Cuestiones relacionadas