其实android 我还没你懂   不过我觉得你说的这个与android没有太大关系  这个可以说成一个逻辑问题
一般的话可以设置一个 变量,如果进入到B播放音乐了,那这个变量设置为 true,以后每次进入B的时候判断这个变量,如果为true,那有些操作就不要做了。 这个变量可以在你停止播放的时候设为false。我觉得这样应该可以的吧 ??呵呵

解决方案 »

  1.   

    AndroidManifest.xml里面把Activity B 的android:launchMode设为singleInstance,在Activity B里面写:
    public void finish(){
         moveTaskToBack(true);
    }
    再在Activity B里面加按钮以关闭音乐和Destroy自己
      

  2.   

    首先我给LZ的建议是 , 做音乐播放这块 , 最好专业一些 , 你播放部分为什么要放在Activity里面了 , 你可以利用B来布局一些按钮控制音乐播放 ,在里面启动一个Service服务啊 ,这样就把你的前台和音乐播放部分分离开了。
    MediaPlayer类里面有一个isPlaying()方法判断它的播放状态的 , 你可以用它来做判断。
      

  3.   

    非常感谢您的建议,我上述代码只是一个测试的例子,想试试看两次进入B歌曲是否播放正常,最近确实在做一个播放器,也遇到挺多问题的,呵呵。
    谢谢nj_dobetter,我其实正是希望B中的onCreate()只执行一次,一直不知道怎么做,用你的办法就可以实现了。
    呵呵,也谢谢rollrock1987,让我多一种思路。
      

  4.   

    再请教一下,我在B中播放音乐,为什么切换到A后音乐仍然在播放呢?这虽然是我想要的结果,但不是很明白,还没有用过Service,呵呵,难道MediaPlayer会自动启动以后service在后台运行?
      

  5.   

    “MediaPlayer会自动启动以后service在后台运行”打错了,应该是“ediaPlayer会自动启动一个service在后台运行?”
      

  6.   

    设置一个变量记住上次放到什么地方了吧,Android自带的播放器就有这个功能啊。
      

  7.   

    音乐播放放到后台service里 通过界面控制
      

  8.   

    oncreate初始化的时候,做下判断,如果正在播放,不重新初始化if(player !=null && !player.isPlaying){
      new player.....}
    else{
      继续播放...
    }
      

  9.   

    dddddddddddddddddddddddddddddddddddddddddddddd
      

  10.   

    dddddddddddddddddddddddddddddddddddddddddddddddd
      

  11.   

    ddddddddddddddddddddddddddddddddddddddddddddddddddddddd
      

  12.   

    请教一下,我现在做了一个音乐播放程序,包括一个控制播放的activity和一个用startService启动的播放音乐的service;还做了连接这个程序的appwidget,点击其一个按钮可以进入activity。问题是:先进入activity并启动了service进行音乐播放,而返回桌面调用appwidget并点击按钮进入activity后activity是重新打开了一个activity,而不是激活原来的那个,而且这个新打开的activity还不能与原启动的service通信。请问是何原因?我该怎么从appwidget进入activity?
      

  13.   

    activity关闭的时候记得要关掉service