android studio 实现 小视频 播放

该博客介绍了如何使用Android Studio实现小视频播放的功能。主要步骤包括:从服务器获取视频路径,获取视频第一帧,使用RecyclerView展示视频预览,并通过VideoView播放视频。同时提到了后端使用Servlet和Mybatis访问Oracle数据库。
摘要由CSDN通过智能技术生成

思路 android studio
1:发送请求获取服务器所有视频的路径
2:根据路径获取视频的第一帧
3:使用(RecyclerView) 存放图片 在适配器中添加事件 传给 播放的activate
4:在播放的activate 使用(VideoView) 播放 差不多了 贴代码

后台 myeclipse servlet oracle 操作数据库 mybatis

android studio 端 MainActivity 写的不严谨 但是不影响使用

package wlt.com.video;

import androidx.annotation.NonNull;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.DefaultItemAnimator;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.recyclerview.widget.StaggeredGridLayoutManager;

import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.Rect;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.view.Window;
import android.widget.Button;

import org.json.JSONArray;
import org.json.JSONObject;

import java.io.IOException;
import java.nio.charset.Charset;
import java.util.ArrayList;
import java.util.List;

import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.FormBody;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;
import wlt.com.video.adapter.Listadapter;
import wlt.com.video.bean.VideoVo;

public class MainActivity extends AppCompatActivity {
   

    private RecyclerView recyclerView;

    private Listadapter listadapte;

    private LinearLayoutManager layoutManager;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
   
        super.onCreate(savedInstanceState);
        // supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.list);
        recyclerView = (RecyclerView) this.findViewById(R.id.recy);
        StaggeredGridLayoutManager manager = new StaggeredGridLayoutManager(2, StaggeredGridLayoutManager.VERTICAL);
        alert();
        recyclerView.setLayoutManager(manager);

                final List<VideoVo> lise = setdate();
                listadapte = new Listadapter(MainActivity.this, lise);
                listadapte.notifyDataSetChanged();
                recyclerView.setAdapter(listadapte);
                listadapte.setMyonitemClick(new Listadapter.MyonitemClick() {
   
                    @Override
                    public void MyOnitemClicks(int positoin) {
   

                        Intent intent = new Intent(MainActivity.this, StatcVideo.class);
						//这里将视频的路径传过去
                        intent.putExtra("url", lise.get(positoin).getV_url());
                        startActivity(intent);
                    }
                });

        // recyclerView.addItemDecoration(new SprxxxxxxxxxxxxKK(3));
        //添加事件

    }

    public void alert(){
   

      final   ProgressDialog dialog = new ProgressDialog(MainActivity.this);

        dialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);

        // 设置ProgressDialog 标题
        dialog.setTitle("溪瑶视频");

        // 设置ProgressDialog 提示信息
        dialog.setMessage("视频正在加载中……");

        // 设置ProgressDialog 标题图标
        dialog.setIcon(R.drawable.ic_launcher_background);

        // 设置ProgressDialog 进度条进度
       //dialog.setProgress(100);

        // 设置ProgressDialog 的进度条是否不明确
        dialog.setIndeterminate(false);

        // 设置ProgressDialog 是否可以按退回按键取消
        dialog.setCancelable(true);
        dialog.setButton("取消", new DialogInterface.OnClickListener() {
   
            public void onClick(DialogInterface dialog, int i) {
   
                // 点击“取消”按钮取消对话框
                dialog.cancel();
            }
        })
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值