Jan*_*usz 164
你可以通过Intent来做到这一点.
Intent startMain = new Intent(Intent.ACTION_MAIN);
startMain.addCategory(Intent.CATEGORY_HOME);
startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(startMain);
Run Code Online (Sandbox Code Playgroud)
此Intent将启动用户已定义的启动器应用程序.请注意这一点,因为如果用户不期望这样,应用程序就会崩溃.
如果您希望从应用程序构建退出按钮,请阅读Android中的退出按钮上的这篇文章
Xar*_*mer 23
一线解决方案
moveTaskToBack(true); //activity.moveTaskToBack(true);
Run Code Online (Sandbox Code Playgroud)
当按下Home按钮时它会表现出来
Pet*_*tai 10
Janusz的答案很棒.
我想要添加的唯一内容,即评论有点太长,是您可以在没有引用当前活动的情况下进入主屏幕.
Janusz的代码需要从Activity或Fragment调用,因为startActivity(),
要解决此问题,您可以在应用程序文件中存储应用程序上下文的静态引用:
public class YourApplication extends Application
{
private static Context mAppContext;
public void onCreate()
{
super.onCreate();
...
YourApplication.mAppContext = getApplicationContext();
}
public static Context getContext()
{
return mAppContext;
}
}
Run Code Online (Sandbox Code Playgroud)
现在,你可以从任何类的当前活动的参考发送用户设备主屏幕在您的应用程序,而不仅仅是活动,片段或其他类(你可以决定这是否是好事还是坏事):
Intent startMain = new Intent(Intent.ACTION_MAIN);
startMain.addCategory(Intent.CATEGORY_HOME);
startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
YourApplication.getContext().startActivity(startMain);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
73447 次 |
| 最近记录: |