我在我的 DroidGap 类上设置了一个 javascript 接口(interface),
mc = new MyClass(this, appView);
appView.addJavascriptInterface(mc, "MyCls");
我从中启动媒体播放器
public void playAudio(String audioFile){
copyFileToDir(audioFile);
File dest = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MUSIC + "/" + audioFile + ".mp3");
Uri r = Uri.fromFile(dest);
Intent viewMediaIntent = new Intent();
viewMediaIntent.setAction(android.content.Intent.ACTION_VIEW);
viewMediaIntent.setDataAndType(r, "audio/*");
viewMediaIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP);
Intent i = Intent.createChooser(viewMediaIntent, "Play Music");
mGap.startActivity(i);
}
但是当我这样做时,当我按回键时,我的应用程序不再运行,并且我被发送到主屏幕。 我尝试将 keepRunning 设置为 true 但没有多大帮助。
super.setBooleanProperty("keepRunning", true);
即使我启动另一个 Activity,如何保持它运行?
更新
现在事情变得更奇怪了。该 Activity 在运行 4.2 的 Nexus 7 上、在运行 2.2 的 HTCdesire/Htc Bravo 上不会被破坏,但在运行 4.1.2 的 Galaxy s3 上失败。关于如何找出原因有什么想法吗?
最佳答案
我的问题是我自己造成的。 设置 -> 开发者选项 -> 应用
上有一个名为不保留 Activity
的选项。一旦用户离开它,它就会销毁所有 Activity 。因此,一旦我取消选中那个可爱的复选框,我的问题就解决了。
关于android - 当另一个 Activity 启动时,Phonegap 应用程序将关闭。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14507035/