2012-12-28 28 views
1

首先说我没有太多的编程经验,这些都是我在Android中的第一步。声音出现在UI加载之前android 4.0

我开发了一个android应用程序,其中minSdkVersion 8targetSdkVersion 16

该应用程序就像一个照片库,当你触摸其中一张照片时,显示一个带有图片,文本和播放两个声音的屏幕。您可以查看上一个或下一个屏幕用手指滑动,或者使其自动滑动一段时间。

我测试过在模拟器中的应用程序与android 2.2,并与android 2.3.5android 4.0.x一些设备。

android 2.2 and 2.3.5该应用程序正常工作,但与android 4.0.x我检测到“手动”方式正常工作,但“自动图像滑动”不起作用。

问题在于您选择了其中一张图片并且第一个活动正确运行,但在第一个活动之后,在该活动的布局显示在屏幕上之前听到下一个活动的声音。如果退出到主菜单并选择其他图片,则问题是相同的。你看到正确的第一个活动,然后,这些声音推动活动的形象。

我还没找到类似于我在这里搜索的问题。谁能帮我?

编辑显示一些代码。

的onCompletion代码:

public void onCompletion(MediaPlayer mp) { 
    if(mp.equals(mpNom)){ 
     try { 
      Thread.sleep (mpNom.getDuration()+500); 
     } catch (InterruptedException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     }   

    }else if(mp.equals(mpSo)){ 
     try { 
      Thread.sleep (mpSo.getDuration()); 
     } catch (InterruptedException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
} 
} 

应用简化版,显示任何错误,并没有崩溃,但是当声音已经重现显示的UI。

有什么想法?提前致谢。

+0

你可能会阻塞UI线程。显示一些代码,不只是描述问题。 – Squonk

+0

我已编辑帖子以添加一些代码。有关这个问题的任何想法? –

回答

0

最后我解决了这个问题。

看来问题出现在OnCompletion方法或此方法内的代码中。

我重写代码使应用程序做相同,但以不同的方式(programmaticaly说话),避免了OnCompletion方法现在应用可以完美运行Android中4.0.x的