Fixing video player not play on ios

This commit is contained in:
Alex Tran 2022-02-05 21:23:34 -06:00
parent f53b82de20
commit c564bab4e8
4 changed files with 37 additions and 16 deletions

View file

@ -41,9 +41,22 @@
<string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string>
</array>
<key>UIUserInterfaceStyle</key>
<string>Light</string>
<key>UIViewControllerBasedStatusBarAppearance</key>
<true />
<true />
<key>NSPhotoLibraryUsageDescription</key>
<string>App need your agree, can visit your album</string>
<string>We need to manage backup your photos album</string>
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
</dict>
</plist>

View file

@ -1,4 +1,5 @@
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:hive_flutter/hive_flutter.dart';
import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:immich_mobile/routing/router.dart';
@ -12,6 +13,12 @@ void main() async {
// Hive.registerAdapter(ImmichBackUpAssetAdapter());
// Hive.deleteBoxFromDisk(hiveImmichBox);
SystemChrome.setSystemUIOverlayStyle(
const SystemUiOverlayStyle(
statusBarIconBrightness: Brightness.light,
),
);
runApp(const ProviderScope(child: ImmichApp()));
}
@ -69,6 +76,7 @@ class _ImmichAppState extends ConsumerState<ImmichApp> with WidgetsBindingObserv
title: 'Immich',
debugShowCheckedModeBanner: false,
theme: ThemeData(
brightness: Brightness.light,
primarySwatch: Colors.indigo,
textTheme: GoogleFonts.workSansTextTheme(
Theme.of(context).textTheme.apply(fontSizeFactor: 1.0),
@ -79,6 +87,7 @@ class _ImmichAppState extends ConsumerState<ImmichApp> with WidgetsBindingObserv
foregroundColor: Colors.indigo,
elevation: 1,
centerTitle: true,
systemOverlayStyle: SystemUiOverlayStyle.dark,
),
),
routeInformationParser: _immichRouter.defaultRouteParser(),

View file

@ -1,6 +1,5 @@
import 'package:auto_route/auto_route.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:google_fonts/google_fonts.dart';
import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:immich_mobile/modules/home/providers/asset.provider.dart';
@ -100,10 +99,6 @@ class ImmichSliverAppBar extends ConsumerWidget {
],
),
],
systemOverlayStyle: const SystemUiOverlayStyle(
statusBarColor: Colors.white,
statusBarBrightness: Brightness.dark,
statusBarIconBrightness: Brightness.light),
),
);
}

View file

@ -55,14 +55,17 @@ class _VideoThumbnailPlayerState extends State<VideoThumbnailPlayer> {
}
Future<void> initializePlayer() async {
videoPlayerController =
VideoPlayerController.network(widget.url, httpHeaders: {"Authorization": "Bearer ${widget.jwtToken}"});
try {
videoPlayerController =
VideoPlayerController.network(widget.url, httpHeaders: {"Authorization": "Bearer ${widget.jwtToken}"});
await Future.wait([
videoPlayerController.initialize(),
]);
_createChewieController();
setState(() {});
await videoPlayerController.initialize();
_createChewieController();
setState(() {});
} catch (e) {
debugPrint("ERROR initialize video player");
print(e);
}
}
_createChewieController() {
@ -80,7 +83,7 @@ class _VideoThumbnailPlayerState extends State<VideoThumbnailPlayer> {
super.dispose();
videoPlayerController.pause();
videoPlayerController.dispose();
chewieController!.dispose();
chewieController?.dispose();
}
@override
@ -96,6 +99,7 @@ class _VideoThumbnailPlayerState extends State<VideoThumbnailPlayer> {
height: 75,
child: CircularProgressIndicator.adaptive(
strokeWidth: 2,
));
),
);
}
}