应用里的activityA启动一个service
service里再启动一个activityB,activityB是加了android:excludeFromRecents="true"的
也就是activityB是不出现在最近应用里的(长按首页键那个)
在activityB界面按首页键,切换到桌面界面
此时长按首页键,列表里点击activityA,会显示activityA界面,此时已经无法调用到activityB
我的问题是,如果保证activityB打开的时候,后台切换到activityA就直接显示activityB

解决方案 »

  1.   

    在activityA的回调方法中使用Intent就行了,当这个activity创建的时候直接就跳转到activityB里面。
    在ActicityA的onCreate方法中
    Intent intent = new Intent(activityA(activityA对应的类名).this, activityB(activityB对应的类名).class);
    activityA(activityA对应的类名).this.startActivity(intent);
      

  2.   

    activityA的onRestart方法里面finish自己
      

  3.   

    感谢楼上两位回答
    但是楼上说的情况好像不太适合我
    activityA是主程序,不能结束掉,activityB是支付界面,比如支付宝支付插件
    假如支付宝支付过程需要输入短信验证码,有些手机必须切换到短信界面才能看到验证码
    看完短信后长按首页键点击我的应用,我该怎么切换到支付界面,支付界面的activity有没有可能被系统回收了
      

  4.   

    在ActivityB里收到HOME消息的时候,对状态做保存处理就行了啊。比如设置一个全局flag。然后当再次启动ActivityA的时候,判断flag,如果true,跳转到B,不就行了?
    难点在于如果应用已经被别人覆盖了,此时不能简单的收到HOME消息,该怎么办?