Eerven Ответов: 2

как закрыть приложение (все действия)


Я пробую это,но оно застряло Login.class не очень близкое применение..

@Override
	public boolean onOptionsItemSelected(MenuItem item) {
		// Take appropriate action for each action item click
		switch (item.getItemId()) {
		case R.id.action_settings2:
				Intent intent = new Intent(getApplicationContext(), Login.class);
				intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
				startActivity(intent);
			return true;
			
		case R.id.action_settings3:
			final AlertDialog.Builder adb = new AlertDialog.Builder(this);
			
			adb.setTitle("Confirm?");
			adb.setMessage("Plese Confirm");
			adb.setNegativeButton("Cancel", null);
			adb.setPositiveButton("Ok", new AlertDialog.OnClickListener() {
				public void onClick(DialogInterface dialog, int arg1) {
					/*Intent intent2 = new Intent(Intent.ACTION_MAIN);
					intent2.addCategory(Intent.CATEGORY_HOME);
					intent2.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
					startActivity(intent2);*/
					
					Intent intent = new Intent(getApplicationContext(), Login.class);
					intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
					intent.putExtra("EXIT", true);
					startActivity(intent);
					
				}
			});
			adb.show();
			
			if (getIntent().getBooleanExtra("EXIT", false)) {
			    finish();
			}
			
			return true;
			
		default:
			return super.onOptionsItemSelected(item);
		}
	}


спасибо :D

Richard MacCutchan

Где находится код для класса Login?

David Crow

А что именно делает "застрял на Login.class" значит?

С кем вы работаете action_settings2 или action_settings3?

if (getIntent().getBooleanExtra("EXIT", false))
{
    finish();
}

Какова цель этого в конце концов onOptionsItemSelected()?

2 Ответов

Рейтинг:
2

TorstenH.

дикая догадка (я вообще не увлекаюсь Андроидом)

getRuntime().exit();



Там может быть что-то еще, чтобы заставить gc очиститься. проверьте это в API разработчиков Android:

http://developer.android.com/reference/java/lang/Runtime.html[^]

получайте удовольствие!


Рейтинг:
0

jorgesys

Использовать этот метод:

public static void KillApp(){
     System.runFinalization();
     System.exit(0);
}

Плюс:
Если ваше Android приложение работает на Blackberry OS 10 используйте этот метод:
public static void KillApp(){
        android.os.Process.killProcess(android.os.Process.myPid());
    }

Йоргесис