Android SDK 2.2的windows 模拟器,运行《Hello Android》上的例子(代码如下),遇到如下错误。samplevideo.3gp保存在项目目录的data目录下。类似的mp3的例子就没问题屏幕打出Cannot play video,LogCat:
09-20 14:09:44.849: ERROR/MediaPlayer(278): error (1, -2147483648)
09-20 14:09:44.880: ERROR/MediaPlayer(278): Error (1,-2147483648)
09-20 14:09:44.880: DEBUG/VideoView(278): Error: 1,-2147483648----------------------------------
//Video.java
package org.example.video;import android.app.Activity;
import android.os.Bundle;import android.widget.VideoView;public class Video extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        try {
         setContentView(R.layout.main);
        
         VideoView video = (VideoView) findViewById(R.id.video);
        
         // Load and start the movie
         video.setVideoPath("/data/samplevideo.3gp" );
        
         video.start();
        } catch (Exception e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
     }
    }
}

解决方案 »

  1.   

    你的文件放在/data目录下,你的应用有权限去读data目录吗
      

  2.   

    感觉要播放的话,还差很多。在video.start();之前,你能保证VideoView准备好了吗?
      

  3.   

    我用的windows模拟器,目录权限应该不是问题吧。 tntno1说的播放还差很多,具体差什么?我这是copy的书上例子。
      

  4.   

    public void onCreate(Bundle savedInstanceState) {
            ........
            video.setOnPreparedListener(videoViewPrepared);
            ........
    }private OnPreparedListener videoViewPrepared = new OnPreparedListener() {
            @Override
            public void onPrepared(MediaPlayer mp) {
                Log.v(TAG, "onPrepared");
                video.start();
            } 
            
        };这些需要做一下