Reproduzir o vídeo a partir do url em VideoView [Android]
Encontrei perguntas semelhantes, mas nada funciona para mim.
Eu tento reproduzir vídeo a partir deste url:
http://videocdn.bodybuilding.com/video/mp4/62000/62792m.mp4
o meu código java:
VideoView videoView= (VideoView)findViewById(R.id.exerciseVideo);
Uri uri = Uri.parse(TEST_URL);
videoView.setVideoURI(uri);
videoView.requestFocus();
videoView.start();
Quando eu executar a aplicação nada é mostrado na actividade e o IDE não mostra quaisquer erros. Alguma ideia, por favor?
editar:
A minha actividade onde quero mostrar o vídeo:<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.martin.fitnessapp.ExerciseDetailActivity"
android:orientation="vertical">
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:weightSum="2">
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/exerciseImgA"
android:layout_weight="1"
android:scaleType="fitCenter"
android:adjustViewBounds="true"
android:paddingRight="8dp"/>
<ImageView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/exerciseImgB"
android:layout_weight="1"
android:scaleType="fitCenter"
android:adjustViewBounds="true"
android:paddingLeft="8dp"/>
</LinearLayout>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text=""
android:id="@+id/exerciseDesc" />
<VideoView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/exerciseVideo" />
<ImageView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/guideImg"
android:scaleType="fitCenter"
android:adjustViewBounds="true"/>
</LinearLayout>
</ScrollView>
4
Author: Md Imran Choudhury, 2016-11-05
3 answers
Tenta este código.. Este código funciona perfeitamente para mim..
final VideoView videoView;
videoView = (VideoView)findViewById(R.id.videoView);
videoView.setVideoPath("http://videocdn.bodybuilding.com/video/mp4/62000/62792m.mp4");
videoView.start();
13
Author: vishnumm93, 2016-11-05 06:15:53
Como sei que não devias usar {[[0]} para VideoView
Altura.
VideoView
não se redimensionou depois do vídeo em cache
1
Author: Alex Karamyshev, 2018-01-12 13:32:03
Por Favor, adicione a permissão da Internet, eles mudam o layout_ theight wrap_content para match parent. este é um código para este problema
public class MainActivity extends Activity {
private ProgressDialog bar;
private String path="https://videocdn.bodybuilding.com/video/mp4/62000/62792m.mp4";
private MediaController ctlr;
private VideoView videoView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().setFormat(PixelFormat.TRANSLUCENT);
setContentView(R.layout.activity_main);
bar=new ProgressDialog(MainActivity.this);
bar.setTitle("Connecting server");
bar.setMessage("Please Wait... ");
bar.setCancelable(false);
bar.show();
if(bar.isShowing()) {
videoView = findViewById(R.id.v1);
Uri uri = Uri.parse(path);
videoView.setVideoURI(uri);
videoView.start();
ctlr = new MediaController(this);
ctlr.setMediaPlayer(videoView);
videoView.setMediaController(ctlr);
videoView.requestFocus();
}
bar.dismiss();
}
}
0
Author: Devolper Engg, 2018-07-13 07:28:17