java - MediaPlayer "android "始终为空?

标签 java android

我在书中关注了这个挑战,但我被困在这里,基本上我有一个类来控制 MediaPlayer 类中的对象来播放文件夹“raw”中的特定视频,代码如下:

private MediaPlayer mPlayer;

    public void start(Context c,SurfaceHolder H){

        mPlayer = MediaPlayer.create(c, R.raw.apollo_17_stroll); // always null
        if(mPlayer != null){

        mPlayer.setDisplay(H); // when I used it before the if statment it crashes, but I think it's because that player is null
        mPlayer.start();

        }

    }

我有一个带有 SurfaceView 的 fragment View :

<LinearLayout 
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_weight="2"
    >
        <SurfaceView 
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingTop="100dp"
    android:paddingBottom="100dp"
    android:id="@+id/hellomoon_Surface_View"
    />

    </LinearLayout>

我基本上在 fragment 类中调用它:

private VideoPlayer mVideoPlayer = new VideoPlayer(); // the class that I created to play a specific Video

private SurfaceView mSurfaceView;

mSurfaceView = (SurfaceView)v.findViewById(R.id.hellomoon_Surface_View);

mPlayBTN.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {

                //mPlayer.play(getActivity());
                mVideoPlayer.start(getActivity(),mSurfaceView.getHolder());

            }
        });

//编辑:

我已经下载了一个视频转换器,并将视频转换为 android 支持的 mp4,现在可以使用了,不知道为什么,但同一个文件与其他文件一起工作得很好,无论如何,谢谢大家..

最佳答案

改成这样怎么样

mPlayer = MediaPlayer.create(this , R.raw.apollo_17_stroll); 

*我不太确定。

但是这里可能对你有帮助

MediaPlayer.create() always returns null

Android MediaPlayer.Create() returns null

关于java - MediaPlayer "android "始终为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24900639/

相关文章:

java - Gerrit LDAP 配置

java - 列表 foreach 方法

java - 资源 <资源 ID 的编号> 类型 0x12 无效

android - 从 sd 卡创建一个 drawable 以在 android 中设置为背景

android - 设置位置管理器 RequestLocationUpdate

java - java中动态追加语音识别的语法文件

java - 从位于网络服务器上运行 java 程序。

java - 在java中计算句子中每个单词的频率

Android - Realm - 对象删除 - 对象不再有效以进行操作

android - 如何检测左/右和上/下之间的滑动方向