From c564bab4e86abd81905dd77795fad968bbcb8ef3 Mon Sep 17 00:00:00 2001 From: Alex Tran Date: Sat, 5 Feb 2022 21:23:34 -0600 Subject: [PATCH] Fixing video player not play on ios --- mobile/ios/Runner/Info.plist | 17 ++++++++++++-- mobile/lib/main.dart | 9 ++++++++ .../modules/home/ui/immich_sliver_appbar.dart | 5 ----- .../lib/shared/views/video_viewer_page.dart | 22 +++++++++++-------- 4 files changed, 37 insertions(+), 16 deletions(-) diff --git a/mobile/ios/Runner/Info.plist b/mobile/ios/Runner/Info.plist index ded59d2292..76dc408577 100644 --- a/mobile/ios/Runner/Info.plist +++ b/mobile/ios/Runner/Info.plist @@ -41,9 +41,22 @@ UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight + + UIUserInterfaceStyle + Light + UIViewControllerBasedStatusBarAppearance - + + NSPhotoLibraryUsageDescription - App need your agree, can visit your album + We need to manage backup your photos album + + NSAppTransportSecurity + + NSAllowsArbitraryLoads + + + + \ No newline at end of file diff --git a/mobile/lib/main.dart b/mobile/lib/main.dart index 47222e5791..c05e9384e6 100644 --- a/mobile/lib/main.dart +++ b/mobile/lib/main.dart @@ -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 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 with WidgetsBindingObserv foregroundColor: Colors.indigo, elevation: 1, centerTitle: true, + systemOverlayStyle: SystemUiOverlayStyle.dark, ), ), routeInformationParser: _immichRouter.defaultRouteParser(), diff --git a/mobile/lib/modules/home/ui/immich_sliver_appbar.dart b/mobile/lib/modules/home/ui/immich_sliver_appbar.dart index 1fd6af557b..055403034b 100644 --- a/mobile/lib/modules/home/ui/immich_sliver_appbar.dart +++ b/mobile/lib/modules/home/ui/immich_sliver_appbar.dart @@ -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), ), ); } diff --git a/mobile/lib/shared/views/video_viewer_page.dart b/mobile/lib/shared/views/video_viewer_page.dart index 6b006c06e8..9f42a52204 100644 --- a/mobile/lib/shared/views/video_viewer_page.dart +++ b/mobile/lib/shared/views/video_viewer_page.dart @@ -55,14 +55,17 @@ class _VideoThumbnailPlayerState extends State { } Future 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 { super.dispose(); videoPlayerController.pause(); videoPlayerController.dispose(); - chewieController!.dispose(); + chewieController?.dispose(); } @override @@ -96,6 +99,7 @@ class _VideoThumbnailPlayerState extends State { height: 75, child: CircularProgressIndicator.adaptive( strokeWidth: 2, - )); + ), + ); } }