代码之家  ›  专栏  ›  技术社区  ›  Student

如何从onCreate启动MPlayer?

  •  1
  • Student  · 技术社区  · 16 年前

    为什么如果我从onCreate启动MPlayer,它就不会启动? 我也尝试了onStart(),但唯一有效的方法是onTouch或按键。

    你知道如何启动它而不需要任何额外的用户输入吗?

    1 回复  |  直到 16 年前
        1
  •  0
  •   Dariusz Bacinski    16 年前

    你应该在创建曲面后启动播放器。如果您想在活动开始时开始播放,应该在surfaceCreated事件上进行播放。您可以通过实现 SurfaceHolder.Callback

    public void onCreate(Bundle icicle) {
        mPreview = (SurfaceView) findViewById(R.id.surface);
        holder = mPreview.getHolder();
        holder.addCallback(this);
    }
    
    public void surfaceCreated(SurfaceHolder holder) {
        Log.d(TAG, "surfaceCreated called");
        playVideo();
    }
    

    尝试跟随Android ApiDemos。视频播放器示例可在以下网址找到:

    ...android-sdk-windows\platforms\android-x\samples\ApiDemos\src\com\example\android\apis\media\MediaPlayerDemo_Video.java

    或web链接: ApiDemos Media