当前位置: 代码迷 >> Android >> Android 实现Activity后台老板运行
  详细解决方案

Android 实现Activity后台老板运行

热度:13   发布时间:2016-05-01 13:55:49.0
Android 实现Activity后台运行
		PackageManager pm = getPackageManager();                                ResolveInfo homeInfo = pm.resolveActivity(new Intent(Intent.ACTION_MAIN)		.addCategory(Intent.CATEGORY_HOME), 0);




	public boolean onKeyDown(int keyCode, KeyEvent event) {		if (keyCode == KeyEvent.KEYCODE_BACK) {			ActivityInfo ai = homeInfo.activityInfo;			Intent startIntent = new Intent(Intent.ACTION_MAIN);			startIntent.addCategory(Intent.CATEGORY_LAUNCHER);			startIntent.setComponent(new ComponentName(ai.packageName,					ai.name));			startActivitySafely(startIntent);			return true;		} else			return super.onKeyDown(keyCode, event);	}



	void startActivitySafely(Intent intent) {		intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);		try {			startActivity(intent);		} catch (ActivityNotFoundException e) {			Toast.makeText(this, R.string.unabletoopensoftware,					Toast.LENGTH_SHORT).show();		} catch (SecurityException e) {			Toast.makeText(this, R.string.unabletoopensoftware,					Toast.LENGTH_SHORT).show();			Log					.e(							TAG,							"Launcher does not have the permission to launch "									+ intent									+ ". Make sure to create a MAIN intent-filter for the corresponding activity "									+ "or use the exported attribute for this activity.",							e);		}	}
  相关解决方案