• Stars
    star
    264
  • Rank 155,103 (Top 4 %)
  • Language
    Java
  • Created over 7 years ago
  • Updated about 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Android - 微信 - 朋友圈 - 小视频播放,wechat friend-circle,small video play

作者:林冠宏 / 指尖下的幽灵

掘金:https://juejin.im/user/587f0dfe128fe100570ce2d8

博客:http://www.cnblogs.com/linguanh/

GitHub : https://github.com/af913337456/

为了您的直观体验,请务必看完下面 gif 图,源码 gitHub 链接在其之后。

为了避免大家浪费时间,直接先看下面的 Gif,略大,请耐心点。看完后,若你觉得会需要到,那么就请听我继续。

gif 演示太大,github 显示不了。看视频链接可以去文章:https://juejin.im/post/59006c76a0bb9f0065dbc835 中看

引用库(use library)

repositories {
    jcenter()
    maven { url "https://jitpack.io" }
}
compile 'com.github.af913337456:WeChatVideoView:1.0'

功能点

如果你看完上面的gif图,你会发现如下几点功能 (Function list):

1,直观的

  • 播放前,可以显示封面缩略图
  • 播放时,如果还没有本地缓存,那么先进行下载
  • 下载过程中,显示圆型区域进度效果
  • 下载后,播放完毕后可以循环播放
  • 播放已经播放过的,是具备本地缓存的,也就是既能播放网络,也能播放本地

2,隐藏的

  • 低耗电量
  • 低内存占用
  • 无延迟图与视频切换
  • 低耦合,高内聚,几行代码接入

解析

直观的功能点,几乎就是和新版微信的一样,从朋友圈点击一个视频,然后进入到一个 Activity 页面进行加载以及播放。

为什么低耗电量和低内存占用?

因为采用的是 SurfaceView 而不是 TextureView,图与视频切换的切换延迟也是这个原因。

在你的 Activity 中这样使用

这样就会以 id 为 activity_main 的 Relativelayout 为父容器装载。 因为要避免内存泄露,所以你还需要做完下面的一些步骤,不会超过6行代码。

More Repositories

1

WangyiyunBottomSheetDialog

网易云音乐效果的-BottomSheetDialog,Slide, rebound
Java
224
star
2

XView

下雨,飘雪,红包雨,碰撞球,粒子隧道,变幻 自定义View
Java
106
star
3

SlowlyProgressBar

真正的仿微信WebView顶部进度条效果。SlowlyProgressBar,ProgressBar
Java
88
star
4

SpeexVoiceRecorder

基于 speex 的语音录制
Java
81
star
5

EasyGoServer

一个能够仅仅依赖你创建好的 sql 文件,就能 自动帮你生成基础服务端框架代码 的 go server 框架
Go
50
star
6

eth-relay

以太坊中继,ETH-Relay。书籍:《区块链以太坊DApp开发实战》源码,区块扫描
Go
49
star
7

IjkPlayerDemo

IJKPlayer 的Dome,已经编译好了.so,可以直接使用,同时也做一些功能的拓展
Java
39
star
8

golang_image_compress

Go
36
star
9

LghGreenDaoCompatibleUpdateHelper

greenDao, green dao update,update,database,update helper
Java
30
star
10

XGoServer

一个基础性、模块完整且安全可靠的轻量级 Go 服务端框架
Go
22
star
11

LghHttp

A simple but powerful Http tool for Android
Java
18
star
12

btc_book

书籍:《区块链DApp开发: 基于以太坊和比特币》源码。btc blockchain code of my book
Go
13
star
13

VlcDemo

Java
12
star
14

GreenDaoHelper

Java
8
star
15

lghLoopViewPager

loop,viewpager
Java
6
star
16

ErrorDocAutoPrinter

Error Doc Auto Print. It can find the specified row in your code and print the document.
Go
5
star
17

TeamTalk_Android_IM_Module

即时通讯模块
Java
4
star
18

blockparser

General blockchain block parsing template code
Go
4
star
19

LGHVideoPlayer

Java
3
star
20

LghOkHttpLib

okhttp tool,tool,okhttp
Java
1
star
21

googlemessage

google message 协议, gm, rcs 协议, rcs
1
star