由于项目中需要用到当用户点击退出的时候处理接入点的事情,但是程序又不能完全退出,并且要求界面马上切换回HOME 桌面状态. 于是想到了一个山寨的办法. 将Activity隐藏.显示桌面.等操作完成后在完全退出程序. //隐藏activity到后台,打开HOME Launcher PackageManager pm = getPackageManager(); ResolveInfo homeInfo = pm.resolveActivity(new Intent(Intent.ACTION_MAIN) .addCategory(Intent.CATEGORY_HOME), 0); ActivityInfo ai = homeInfo.activityInfo; Intent startIntent = new Intent(Intent.ACTION_MAIN); startIntent.addCategory(Intent.CATEGORY_LAUNCHER); startIntent.setComponent(new ComponentName(ai.packageName,ai.name)); startIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); try { startActivity(startIntent); } catch (ActivityNotFoundException e) { Log.i(TAG,"not found Activity error="+e.getMessage()); } catch (SecurityException e) { Log.i(TAG,"not found Activity error="+e.getMessage()); Log.e(TAG,"Launcher does not have the permission to launch "+ startIntent + ". Make sure to create a MAIN intent-filter for the corresponding activity "+ "or use the exported attribute for this activity.", e); }