1
1
线上项目应用运行效果:
2
2
http://file.jinxianyun.com/tencentplayer.MP4
3
3
# 1.Setup
4
- ```
5
- flutter_tencentplayer: ${last_version}
6
-
7
- or
8
-
9
- flutter_tencentplayer:
10
- git:
11
- url: https://github.com/qq326646683/flutter_tencentplayer.git
12
- ```
4
+
5
+ ```
6
+ flutter_tencentplayer: ${last_version}
7
+
8
+ or
9
+
10
+ flutter_tencentplayer:
11
+ git:
12
+ url: https://github.com/qq326646683/flutter_tencentplayer.git
13
+ ```
13
14
> For Android
14
15
15
16
1 . project/android/build.gradle 添加依赖的aar:
16
- ``` gradle
17
+
18
+ ```
17
19
def flutterProjectRoot = rootProject.projectDir.parentFile.toPath()
18
20
def plugins = new Properties()
19
21
def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins')
@@ -33,25 +35,26 @@ allprojects {
33
35
```
34
36
35
37
2 . AndroidManifest.xml 声明权限:
36
- ```
37
- <!--网络权限-->
38
-
39
- <uses-permission android:name="android.permission.INTERNET" />
40
-
41
- <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
42
-
43
- <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
44
38
45
- <!--点播播放器悬浮窗权限-->
46
-
47
- <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
48
-
49
- <!--存储-->
50
-
51
- <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
52
-
53
- <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
54
- ```
39
+ ```
40
+ <!--网络权限-->
41
+
42
+ <uses-permission android:name="android.permission.INTERNET" />
43
+
44
+ <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
45
+
46
+ <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
47
+
48
+ <!--点播播放器悬浮窗权限-->
49
+
50
+ <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
51
+
52
+ <!--存储-->
53
+
54
+ <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
55
+
56
+ <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
57
+ ```
55
58
56
59
> For Ios
57
60
@@ -69,9 +72,22 @@ allprojects {
69
72
70
73
# 2.Usage(TencentPlayer)
71
74
72
- > 和video_player api相似,支持直播源,视频跳转,切换视频源,边下边播放,清晰度切换,设置播放速度
75
+ flutter_tencentplayer 提供video_player 相似api
76
+
77
+ ## 支持功能
78
+
79
+ 1. 支持直播源
80
+ 2. 视频跳转
81
+ 3. 切换视频源
82
+ 4. 边下边播放
83
+ 5. 清晰度切换
84
+ 6. 设置播放速度
85
+
86
+ ### 1.初始化播放器
87
+
88
+ 提供 asset、network、filePath、fileId四种方式播放
89
+
73
90
74
- ### 1.初始化播放器,支持asset、network、filePath、fileId四种方式播放
75
91
```dart
76
92
TencentPlayerController _controller;
77
93
@@ -97,6 +113,7 @@ initState() {
97
113
```
98
114
99
115
### 2.<font color =#0000FF >PlayerConfig</font > (播放器配置参数 )
116
+
100
117
``` dart
101
118
_controller = TencentPlayerController.network(url, playerConfig: PlayerConfig())
102
119
@@ -135,16 +152,21 @@ bitrateIndex | int | 视频清晰度
135
152
### 4.<font color =#0000FF >Event</font > (播放器事件)
136
153
137
154
a.跳转进度
155
+
138
156
``` dart
139
157
_controller.seekTo(Duration(seconds: 5));
140
158
141
159
```
160
+
142
161
b.设置播放速度
162
+
143
163
``` dart
144
164
_controller.setRate(1.5); // 1.0 ~ 2.0
145
165
146
166
```
167
+
147
168
c.切换播放源
169
+
148
170
``` dart
149
171
controller?.removeListener(listener);
150
172
controller?.pause();
@@ -154,10 +176,12 @@ controller?.initialize().then((_) {
154
176
});
155
177
controller?.addListener(listener);
156
178
```
179
+
157
180
d.切换清晰度(实质就是切换播放源)
158
181
159
182
160
183
# 3.Usage(Download)
184
+
161
185
> 离线下载, 支持断点续传(这里只支持m3u8视频、fileId), 支持多文件同时下载
162
186
163
187
### 1.初始化下载器
@@ -182,17 +206,22 @@ initState() {
182
206
### 2.<font color =#0000FF >Event</font > (下载事件)
183
207
184
208
a. 下载
209
+
185
210
``` dart
186
211
_downloadController.dowload("4564972819220421305", quanlity: 2);
187
212
// _downloadController.dowload("http://1253131631.vod2.myqcloud.com/26f327f9vodgzp1253131631/f4bdff799031868222924043041/playlist.m3u8");
188
213
```
214
+
189
215
b. 暂停下载
216
+
190
217
``` dart
191
218
_downloadController.pauseDownload("4564972819220421305");
192
219
// _downloadController.stopDownload("http://1253131631.vod2.myqcloud.com/26f327f9vodgzp1253131631/f4bdff799031868222924043041/playlist.m3u8");
193
220
194
221
```
222
+
195
223
b. 取消下载
224
+
196
225
``` dart
197
226
_downloadController.cancelDownload("4564972819220421305");
198
227
// _downloadController.cancelDownload("http://1253131631.vod2.myqcloud.com/26f327f9vodgzp1253131631/f4bdff799031868222924043041/playlist.m3u8");
@@ -223,6 +252,20 @@ error | String | 下载的错误信息
223
252
224
253
225
254
255
+ # 5.更新内容
256
+
257
+ 1,升级IOS LiteAVSDK 6.8.7969
258
+
259
+
260
+ # 6.解决的问题
261
+
262
+ 1,解决切换视频黑屏
263
+ 2,解决IOS设置loop属性无效问题
264
+ 3,再就是ios的必须设置了autoPlay为true才能播放,设置了false后,在后面执行 controller.play()也不会播放
265
+
266
+
267
+
268
+
226
269
227
270
228
271
0 commit comments