以编程方式将正在运行的应用程序发送到后台

Mit*_*raa 8 android

是否可以在android中以编程方式将活动发送到后台?

我正在创建一个恶作剧应用程序,在指定时间后播放有趣的声音(由用户输入).并且我不希望应用程序在播放该声音时可见,并且显示器应该是黑暗的.

net*_*ein 22

是.

你可以使用:

boolean sentAppToBackground = moveTaskToBack(true);

if(!sentAppToBackground){
  Intent i = new Intent();
  i.setAction(Intent.ACTION_MAIN);
  i.addCategory(Intent.CATEGORY_HOME);
  this.startActivity(i);
}
Run Code Online (Sandbox Code Playgroud)

更多信息请访问:http://developer.android.com/reference/android/app/Activity.html#moveTaskToBack(boolean)

或者干脆:

Intent i = new Intent();
i.setAction(Intent.ACTION_MAIN);
i.addCategory(Intent.CATEGORY_HOME);
this.startActivity(i);
Run Code Online (Sandbox Code Playgroud)

根据Android框架工程师Romain Guy的说法,"你无法模拟主页上的按键." 所以要小心......

检查:http://osdir.com/ml/Android-Developers/2010-03/msg01887.html

根据以下内容更新了此答案:moveTaskToBack(true)始终返回false


Dan*_*syo 7

该功能最终为您服务

moveTaskToBack(true)
Run Code Online (Sandbox Code Playgroud)

或下载源代码。Android以编程方式最小化应用


小智 3

也许可以从服务中播放声音?