2016-09-30 93 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? –