活动已移至开始活动
问题描述:
我发现使用应用程序停留在后台开始新活动很困难。 这里是我的代码:活动已移至开始活动
public class App1 extends Activity{
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
registerReceiver(batteryInfoReceiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
}
private BroadcastReceiver batteryInfoReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context c, Intent i) {
Toast.makeText(getApplicationContext(), "TEST", Toast.LENGTH_LONG).show();
Intent intent = new Intent("App2.intent.action.Launch");
intent.putExtra("startedByApp", true);
startActivity(intent);
}
}
@Override
public void onBackPressed() {
moveTaskToBack(true);
}
}
public class App2 extends Activity{
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Toast.makeText(getApplicationContext(), "TEST 2", Toast.LENGTH_LONG).show();
}
}
当应用1是在前台正常工作。 当应用1是在后台(moveToBack)显示“TEST”,但它不会启动应用2(有我的屏幕上没有“TEST 2”。
家伙,你能帮帮我吗?
答
你需要一个标志intent.addFlag(Intent.FLAG_ACTIVITY_NEW_TASK);
你为什么不尝试使用Log.d()而不是Toast?Toast通常不是很好的调试工具,特别是当你使用getApplicationContext() – mfrankli 2012-07-30 18:35:48
时可能需要一个标志'intent.addFlag(Intent.FLAG_ACTIVITY_NEW_TASK);' – Sunny 2012-07-30 18:41:07
@mfrankli: 这是个好主意 - 我是一个初学者程序员,我想使用它 – user1411291 2012-07-30 19:01:18