android:layout_gravity=“center”
android:gravity=“center”
android:orientation=“vertical”
tools:context=“.MainActivity”>
<VideoView
android:id=“@+id/video_net”
android:layout_width=“match_parent”
android:layout_height=“match_parent”
android:layout_marginLeft=“5dp”
android:layout_marginRight=“5dp”
/>
MainActivity.java
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.VideoView;
import android.widget.MediaController;
//播放网络视频
public class MainActivity extends AppCompatActivity {
VideoView mVideoNet;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mVideoNet=findViewById(R.id.video_net);
initNetVideo();
}
//播放网络视频
private void initNetVideo() {
//设置有进度条可以拖动快进
MediaController localMediaController = new MediaController(this);
mVideoNet.setMediaController(localMediaController);
String url = “http://192.168.1.127:8083/PersonalHomePage/chat/20201119110109.mp4”;/*这里是服务器的地址,前提是PersonalHomePage这个文件夹必须得通过
URL访问得到,也就是说这个文件夹要挂在服务器上*/
mVideoNet.setVideoPath(url);
最后
感谢您的阅读,在文末给大家准备一个福利。本人从事Android开发已经有十余年,算是一名资深的移动开发架构师了吧。根据我的观察发现,对于很多初中级Android工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。
所以在此将我十年载,从萌新小白一步步成长为Android移动开发架构师的学习笔记,从Android四大组件到手写实现一个架构设计,我都有一一的对应笔记为你讲解。
当然我也为你们整理好了百度、阿里、腾讯、字节跳动等等互联网超级大厂的历年面试真题集锦。这也是我这些年来养成的习惯,一定要学会把好的东西,归纳整理,然后系统的消化吸收,这样才能极大的提高学习效率和成长进阶。碎片、零散化的东西,我觉得最没有价值的。就好比你给我一张扑克牌,我只会觉得它是一张废纸,但如果你给我一副扑克牌,它便有了它的价值。这和我们收集资料就要收集那些系统化的,是一个道理。
最后,赠与大家一句诗,共勉!
不驰于空想,不骛于虚声。不忘初心,方得始终。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
156601)**
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!