2014-05-16 12 views
8

Mam dwie czynności, pierwsza to aktywność powitalna. Chciałbym wiedzieć, jak wyjść z aplikacji z drugiego działania na stronę główną. Użyłem tej metody, ale działa, ale działa na launcherze.Wyjście z aplikacji Android programowo

public void AppExit() 
{ 

    this.finish(); 
    Intent intent = new Intent(Intent.ACTION_MAIN); 
    intent.addCategory(Intent.CATEGORY_HOME); 
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
    startActivity(intent); 


} 
+2

Należy zabrać cię do domu stronę, o tym właśnie mówisz. Co dokładnie masz na myśli "wyświetla menu, w którym znajduje się ikona aplikacji"? – zgc7009

+0

Przykro mi, w rzeczywistości zajmuje to launchera i chcę, aby wyszedł na stronę główną – choco

+1

możliwy duplikat [Zamknij aplikację i uruchom ekran startowy na Androidzie] (http://stackoverflow.com/questions/2042222/close- aplikacja-i-uruchom-ekran-ekranu-na-Androidzie) – ugo

Odpowiedz

30

Ilekroć chcesz zamknąć wszystkie otwarte działania, należy nacisnąć przycisk, który ładuje pierwszą czynnością, która działa gdy aplikacja rozpoczyna następnie usuń wszystkie inne działania, to mają ostatnią wykończenie aktywności. w tym celu należy zastosować następujący kod w projekcie ur

Intent intent = new Intent(getApplicationContext(), FirstActivity.class); 
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
intent.putExtra("EXIT", true); 
startActivity(intent); 

Powyższy kod kończy wszystkie czynności z wyjątkiem FirstActivity. Następnie musimy zakończyć FirstActivity na Wprowadź poniższy kod w Firstactivity na OnCreate

if (getIntent().getExtras() != null && getIntent().getExtras().getBoolean("EXIT", false)) { 
    finish(); 
} 

i gotowe ....

Od Finish all activities at a time

+0

dziękuję, właśnie tego chciałem. Dzięki za wyjaśnienia też^_^ – choco

+1

możesz użyć this.finishAffinity() – Jacky

1

Aby zakończyć działalność lub zamknąć aplikację, spróbuj tego ..

public void exitApp(View v) 
{ 

finish(); 

} 

& użyj tego, jeśli wybierzesz opcję zamknięcia aplikacji.

android:onClick="exitApp"

1

Jest to najczystszy sposób mam natknąć:

moveTaskToBack(true); 
finish(); 
10

kiedy chcesz zamknąć aplikację, można zadzwonić

finishAffinity();

lub jeśli chcesz je zamknąć w tle też trzeba napisać,

android: excludeFromRecents = "true"

w AndroidManifest:

 <activity 
     android:name="com.smart.remote.main.SplashActivity" 
     android:configChanges="orientation|keyboardHidden" 
     android:screenOrientation="portrait" 
     android:excludeFromRecents="true"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
+2

finishAffinity() jest dostępny tylko dla API> 14 (4.0) – juzamn

+0

działa jak urok –

Powiązane problemy