2016-09-30 185 views
1
public class MainActivity extends AppCompatActivity { 
    Button clk; 
    VideoView videov; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    clk=(Button) findViewById(R.id.video); 
    videov=(VideoView)findViewById(R.id.videoView); 
    } 

    public void videoplay(View v){ 
    String videopath = "android.resource://"+getPackageName()+"+R.raw.movie"; 
    Uri uri =Uri.parse(videopath); 
    videov.setVideoURI(uri); 
    videov.requestFocus(); 
    videov.start(); 

    } 
    } 

无法播放此视频错误... !!看图片Screen Shot 怎么办? 按播放按钮后,它说不能播放这个视频..! 需要解决这个问题。无法播放此视频错误

+0

是的,它发生了,你应该去第三方图书馆 – Saveen

+0

你能告诉我如何请 –

+0

肯定请等.. – Saveen

回答

1

嗨前天我有同样的问题,并尝试几乎所有,但没有得到任何成功。之后,我用这个库,它工作正常。只需按照以下步骤操作:

Step1。将它添加到您的gradle这个

compile "fm.jiecao:jiecaovideoplayer:4.7.0" 

第二步。将它添加为您的视频以xml布局播放。从这里如何在课堂上使用这个库

<fm.jiecao.jcvideoplayer_lib.JCVideoPlayerStandard 
    android:id="@+id/videoPlayer" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" /> 

第3步:检查,从我身边

public class PlayVideoActivity extends BaseActivity { 

@BindView(R.id.videoPlayer) 
JCVideoPlayerStandard mVideoPlayer; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    restoreFromIntent(getIntent()); 
} 

@Override 
public int getLayout() { 
    return R.layout.activity_play_video; 
} 

//create intent for this activity with all the necessary params 
public static Intent createIntent(Context context, String videoUrl) { 
    Intent intent = new Intent(context, PlayVideoActivity.class); 
    intent.putExtra(ValueConstants.VIDEO_URL, videoUrl); 
    return intent; 
} 

// get video path from intent and play the video here 
private void restoreFromIntent(Intent intent) { 
    String videoPath = intent.getExtras().getString(ValueConstants.VIDEO_URL); 
    mVideoPlayer.setUp(videoPath 
      , JCVideoPlayerStandard.SCREEN_LAYOUT_LIST, ""); 
} 

@Override 
public void onBackPressed() { 
    if (JCVideoPlayer.backPress()) { 
     return; 
    } 
    super.onBackPressed(); 
} 

@Override 
protected void onPause() { 
    super.onPause(); 
    JCVideoPlayer.releaseAllVideos(); 
} 
} 

还有一件事奖金。你也可以使用这个library来做视频缓存。昨天我也发现了这一点。一次从互联网播放。后它没有互联网也玩。

更新的答案:例如我在上文中提供了从URL播放在线视频,但这个问题有相关的视频路径问题问题

只是改变了这条路:

String videopath = "android.resource://"+getPackageName()+"+R.raw.movie"; 
Uri uri =Uri.parse(videopath); 

对此,

Uri uri = Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.yourvideo); 

感谢希望这会帮助你。

+0

我不知道如何谢谢你..! 但你现在就像我的神 感谢您的帮助:) –

+0

没问题,试试这种方式,让我知道如果你有任何问题 – Saveen

+0

如何将第1步添加到gradle? –