|
- import 'dart:io';
-
- import 'package:chat/data/UserData.dart';
- import 'package:chat/data/constants.dart';
- import 'package:chat/generated/i18n.dart';
- import 'package:chat/utils/CustomUI.dart';
- import 'package:chat/utils/HttpUtil.dart';
- import 'package:chat/utils/TokenMgr.dart';
- import 'package:chat/utils/controller_widget_builder.dart';
- import 'package:dio/dio.dart';
- import 'package:flutter/material.dart';
- import 'package:flutter/services.dart';
- import 'package:flutter_ijkplayer/flutter_ijkplayer.dart';
-
- class VideoPage extends StatefulWidget {
- final userId;
- VideoPage({Key key, @required this.userId}) : super(key: key);
-
- _VideoPageState createState() => _VideoPageState();
- }
-
- class _VideoPageState extends State<VideoPage> {
- bool isShowPlayButton = true;
-
- bool isLoadingFish = false;
-
- IjkMediaController controller = IjkMediaController();
-
- @override
- void initState() {
- super.initState();
- SystemChrome.setEnabledSystemUIOverlays([]);
- getInfo();
- }
-
- @override
- void dispose() {
- SystemChrome.setEnabledSystemUIOverlays(SystemUiOverlay.values);
- controller.dispose();
- super.dispose();
- }
-
- getInfo() async {
- Map data = {
- "userId": widget.userId,
- };
- data['sign'] = TokenMgr().getSign(data);
-
- Response res = await HttpUtil().post('user/female/authInfo',
- data: data, failback: () => Navigator.of(context).pop());
- Map resData = res.data;
- print(resData);
- if (resData['code'] == 0) {
- var videoUrl = resData['data']['AttestationValue'];
- if (videoUrl != '' && videoUrl != null) {
- isLoadingFish = true;
- var filePath = await UserData().getLoaclVideoPath(videoUrl);
- controller.setFileDataSource(File(filePath), autoPlay: false);
- setState(() {});
- }
- }
- }
-
-
- @override
- Widget build(BuildContext context) {
- Widget appBar = new AppBar(
- backgroundColor: AppColors.NewAppbarBgColor,
- title: new Text(
- I18n.of(context).certified_video,
- textScaleFactor: 1.0,
- style: TextStyle(color: AppColors.NewAppbarTextColor),
- ),
- centerTitle: true,
- leading: CustomUI.buildCustomLeading(context),
- );
-
- Widget content = Scaffold(
- backgroundColor: const Color(0xFFF4F4F4),
- body: Center(
- child: Container(
- height: MediaQuery.of(context).size.height,
- width: MediaQuery.of(context).size.width,
- child: _buildVideo(),
- ),
- ),
- appBar: appBar,
- resizeToAvoidBottomPadding: false,
- );
- return CustomUI.buildPageLoading(context, content, !isLoadingFish);
- }
-
- Widget _buildVideo() {
- return IjkPlayer(
- controllerWidgetBuilder: (ctl) {
- return MyDefaultIJKControllerWidget(
- ///按钮修改
- controller: ctl,
- hideBackButton: true,
- );
- },
- mediaController: controller,
- );
- }
- }
|