提交 221bb72f authored 作者: kongdywang's avatar kongdywang

upgrade pip docs

上级 cf8fdda8
...@@ -23,6 +23,7 @@ ...@@ -23,6 +23,7 @@
├── ios // 播放器插件iOS源代码 ├── ios // 播放器插件iOS源代码
├── lib // 播放器插件dart源代码 ├── lib // 播放器插件dart源代码
├── docs // 帮助文档 ├── docs // 帮助文档
├── superplayer_widget // 播放器组件
└── example // 播放器相关demo代码 └── example // 播放器相关demo代码
├── android // android的demo源代码 ├── android // android的demo源代码
├── ios // iOS的demo源代码 ├── ios // iOS的demo源代码
......
group 'com.tencent.vod.flutter' group 'com.tencent.vod.flutter'
apply from:'config.gradle' apply from:'config.gradle'
version '1.0.3' version '10.9.0'
buildscript { buildscript {
repositories { repositories {
......
...@@ -547,19 +547,7 @@ loader.getVideoData(model, (resultModel) { ...@@ -547,19 +547,7 @@ loader.getVideoData(model, (resultModel) {
#### 1、安卓平台配置 #### 1、安卓平台配置
1.1 在自己项目的android包下,找到 AndroidManifest.xml ,在项目入口activity节点下,增加如下配置 1.1 在自己项目android包下,找到build.gradle,确保 compileSdkVersion 和 targetSdkVersion 的版本为31或以上
```xml
android:supportsPictureInPicture="true"
android:resizeableActivity="true"
android:configChanges="screenSize|smallestScreenSize|screenLayout|orientation"
// 在自己项目android包下,找到build.gralde,确认 compileSdkVersion 和 targetSdkVersion 的版本为31或以上
```
1.2 继承pip activity
将github项目中example/android 中的 FTXFlutterPipActivity.java 复制到自己入口 Activity 的同目录下,并将自己 Activity 的父类修改为该类。
#### 2、iOS平台配置 #### 2、iOS平台配置
2.1 在自己项目的target下选择Signing & Capabilities 添加Background Modes,勾选Audio,AirPlay,and Picture in Picture 2.1 在自己项目的target下选择Signing & Capabilities 添加Background Modes,勾选Audio,AirPlay,and Picture in Picture
...@@ -621,3 +609,26 @@ if(result == TXVodPlayEvent.NO_ERROR) { ...@@ -621,3 +609,26 @@ if(result == TXVodPlayEvent.NO_ERROR) {
``` ```
result的返回结果的含义和画中画模式错误码一致 result的返回结果的含义和画中画模式错误码一致
#### 7、使用画中画控制器管理画中画
画中画控制器TXPipController为superplayer_widget中封装的画中画工具,**必须与SuperPlayerView搭配起来使用**,进入画中画会自动关闭当前界面,并回调提前设置的监听方法,在回调的方法中可以保存播放器当前界面的必要参数。画中画还原之后,会重新将之前的界面push回来,并传递之前保存的参数。
使用该控制器的时候,画中画和播放器只能存在一个实例,当重新进入播放器界面的时候,画中画会自动关闭。
7.1 在自己的项目的入口处,如main.dart,调用TXPipController设置画中画控制跳转,跳转的页面为用于进入画中画的播放器页面,
可根据自身项目情况设置不同的界面,代码实例如下:
```dart
TXPipController.instance.setNavigatorHandle((params) {
navigatorKey.currentState?.push(MaterialPageRoute(builder: (_) => DemoSuperPlayer(initParams: params)));
});
```
7.2 设置画中画的播放页面监听,需要实现`TXPipPlayerRestorePage`方法,设置之后,当即将进入画中画时,控制器会回调`void onNeedSavePipPageState(Map<String, dynamic> params)`方法,此时可以在params中存入当前页面需要的参数。
```dart
TXPipController.instance.setPipPlayerPage(this);
```
7.3 随后,当用户点击SuperPlayerView上的进入画中画按钮的时候,会调用`SuperPlayerView``_onEnterPipMode`内部方法进入画中画,也可以自行调用`SuperPlayerController``enterPictureInPictureMode`方法进入。
...@@ -89,8 +89,6 @@ repositories { ...@@ -89,8 +89,6 @@ repositories {
./gradlew build ./gradlew build
``` ```
4. 如果需要使用 Android 画中画功能,需要集成 example 组件内 android 目录下的 `FTXFlutterPipActivity.java`,以确保画中画能力正常使用
#### iOS 端配置 #### iOS 端配置
......
...@@ -41,7 +41,7 @@ class _DemoSuperPlayerState extends State<DemoSuperPlayer> with TXPipPlayerResto ...@@ -41,7 +41,7 @@ class _DemoSuperPlayerState extends State<DemoSuperPlayer> with TXPipPlayerResto
// 监听设备旋转 // 监听设备旋转
SuperPlayerPlugin.startVideoOrientationService(); SuperPlayerPlugin.startVideoOrientationService();
_controller = SuperPlayerController(context); _controller = SuperPlayerController(context);
TXPipController.instance.setPipPlayerPage(DemoSuperPlayer, this); TXPipController.instance.setPipPlayerPage(this);
FTXVodPlayConfig config = FTXVodPlayConfig(); FTXVodPlayConfig config = FTXVodPlayConfig();
// 如果不配置preferredResolution,则在播放多码率视频的时候优先播放720 * 1280分辨率的码率 // 如果不配置preferredResolution,则在播放多码率视频的时候优先播放720 * 1280分辨率的码率
config.preferredResolution = 720 * 1280; config.preferredResolution = 720 * 1280;
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
# #
Pod::Spec.new do |s| Pod::Spec.new do |s|
s.name = 'super_player' s.name = 'super_player'
s.version = '1.0.3' s.version = '10.9.0'
s.summary = 'player plugin.' s.summary = 'player plugin.'
s.description = <<-DESC s.description = <<-DESC
player plugin. player plugin.
......
...@@ -101,7 +101,7 @@ class TXPipController { ...@@ -101,7 +101,7 @@ class TXPipController {
return false; return false;
} }
void setPipPlayerPage(Type a, TXPipPlayerRestorePage listener) { void setPipPlayerPage(TXPipPlayerRestorePage listener) {
_onPipEnterListener = listener; _onPipEnterListener = listener;
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论