2011-03-25 46 views
3

我想打一个简单的MP3文件,用下面的代码:导入原始的MP3资源,媒体播放器

package swalehm.android.examples.myTest1; 
import swalehm.android.examples.myTest1.R; 
import android.app.Activity; 
import android.content.Context; 
import android.media.MediaPlayer; 
import android.os.Bundle; 
import android.widget.TextView; 

public class myTest1Main extends Activity 
{ 
    Context context; 

    public MediaPlayer mp = MediaPlayer.create(this, R.raw.sound1); 

    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     TextView tv = new TextView(this); 
     tv.setText("Hello, Android"); 
     setContentView(tv); 
     mp.start(); 
    } 
} 

我在“资源”文件夹中添加了一个名为“原始”文件夹和文件Sound1例子.mp3在里面。

我检查了R.java。指定的资源sound1确实存在于该文件中。但是,当我构建它时,出现错误,说明sound1无法解析或不是字段。我经历了论坛,看到了一个建议,从冲动中删除android.R。现在我收到一条错误消息:

方法MediaPlayer(myTest1Main, int)对于类型myTest1Main未定义。

+0

看跌的start()上onCreat()是一个坏主意:只需旋转屏幕,可以(根据清单配置)音乐重新开始......又一次......与叠加 – boctulus 2015-03-30 15:25:09

+0

注意:在某些情况下,使用这将不适用于上下文。那么你应该使用getApplicationContext() – boctulus 2015-03-30 15:26:39

回答

3

它应该是:

public MediaPlayer mp = MediaPlayer.create(this, R.raw.sound1); 
+0

Hi Rajath 感谢您的帮助。我必须在尝试不同的事情的时候搞清楚。我确实设法构建应用程序。但是当它开始在仿真器上运行时,它会给我出现以下错误: 应用程序Hello Android(进程swalehm.andorid.examples.helloAndroid)已经令人难以置信地停止。请再试一次 任何人都知道为什么会发生这种情况? 感谢 Swalehm – 2011-03-25 17:40:02

+0

什么是堆栈跟踪? – rajath 2011-03-26 04:02:55

+0

对不起,我必须问什么是同一个问题什么是堆栈跟踪。再次感谢您的帮助 – Swalehm 2011-03-26 13:42:01