По вопросу, Native Video View очень ограничен, когда дело доходит до более новых URL, которые (* я думаю) больше не обновляются. попробуйте вместо этого использовать видеоплеер Vitamio . Это очень полезно для различных потоковых функций.
<io.vov.vitamio.widget.VideoView
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:id="@+id/VideoView"/>
Кроме того, не вызывайте метод start()
сразу. Звоните только по вашему OnPreparedListener()
обратному вызову.
Vitamio.isInitialized(getApplicationContext());
mVideoView.setVideoPath(path);
mVideoView.setMediaController(new MediaController(this));
mVideoView.requestFocus();
mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mediaPlayer) {
// optional need Vitamio 4.0
mediaPlayer.setPlaybackSpeed(1.0f);
}
});
Или вы также можете использовать KickFlip . Это очень легко настроить,
Kickflip.initWithApiKey(API_KEY, API_SECRET);
Kickflip.startBroadcastActivity(this, mBroadcastListener);
Edit:
Итак, я пытался работать в потоке со вчерашнего дня. Я не смог отработать это на vitamio (К сожалению). Хотя пытался использовать URL-адрес, который вы дали, и передавал его через приложение vlc. Хотя я не пробовал, вы можете использовать LibVLC . В итоге я использовал webview с некоторыми настройками, чтобы он не выглядел так, как при использовании webview.
webView = findViewById(R.id.wvWebview);
webView.loadUrl("http://121.58.202.110:8080/jpeg?cam=4");
webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setUseWideViewPort(true);