该应用程序在Android 2.3.5中运行良好
但在Nexus 4(Android 4.2.2)中无法正常工作。
该应用程序是:
在主要活动的onCreate中,它通过意图调用另一个活动。
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final Intent launchIntent = new Intent(MainActivity.this, AndroidVideoCapture.class);
launchIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP|Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(launchIntent);
// I add a button dynamically here
}
现在使用Nexus 4,在完成AndroidVideoCapture的意图后,它返回到onCreate的开头“ setContentView(R.layout.activity_main);”。
因此,意图一次又一次地重新启动。
为什么?
最佳答案
尝试添加
if (savedInstanceState == null) {
final Intent launchIntent = new Intent(MainActivity.this, AndroidVideoCapture.class);
launchIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP|Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(launchIntent);
}
savedInstanceState
不为null表示正在重新创建活动。关于android - 为什么主 Activity 在其调用 Intent 完成后(Android 4.2.2)重新启动?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16424430/