Android Feature Optimization and Updates
Build Android Release / Build Android (push) Failing after 7s
Build Android Release / Build Android (push) Failing after 7s
This commit is contained in:
+34
-26
@@ -18,6 +18,7 @@ import 'presentation/providers/upload_manager_provider.dart';
|
||||
import 'presentation/providers/download_manager_provider.dart';
|
||||
import 'presentation/providers/user_setting_provider.dart';
|
||||
import 'presentation/providers/admin_provider.dart';
|
||||
import 'presentation/providers/quick_access_provider.dart';
|
||||
import 'presentation/providers/theme_provider.dart';
|
||||
import 'services/upload_service.dart';
|
||||
import 'services/api_service.dart';
|
||||
@@ -70,7 +71,8 @@ void main() async {
|
||||
// 退出当前新启动的进程
|
||||
exit(0);
|
||||
}
|
||||
final String processName = await singleInstance.getProcessName(pid) ?? "Unknown";
|
||||
final String processName =
|
||||
await singleInstance.getProcessName(pid) ?? "Unknown";
|
||||
final File? pidFile = await singleInstance.getPidFile(processName);
|
||||
int port = FlutterSingleInstance.port;
|
||||
|
||||
@@ -80,17 +82,21 @@ void main() async {
|
||||
final Map<String, dynamic> data = jsonDecode(content);
|
||||
port = data['port'] ?? 0;
|
||||
} catch (e) {
|
||||
AppLogger.e("Get FlutterSingleInstance port has error: ${e.toString()}");
|
||||
AppLogger.e(
|
||||
"Get FlutterSingleInstance port has error: ${e.toString()}",
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
AppLogger.i("processName: $processName \npid: $pid \npidFile: ${pidFile.path.toString()} \nSingleInstance RPC address:port: ${addr.address}:$port");
|
||||
AppLogger.i(
|
||||
"processName: $processName \npid: $pid \npidFile: ${pidFile.path.toString()} \nSingleInstance RPC address:port: ${addr.address}:$port",
|
||||
);
|
||||
|
||||
FlutterSingleInstance.onFocus = (metadata) async {
|
||||
AppLogger.i("收到唤醒信号: $metadata");
|
||||
await DesktopService.instance.showWindow();
|
||||
};
|
||||
|
||||
|
||||
await DesktopService.instance.initialize();
|
||||
}
|
||||
|
||||
@@ -134,21 +140,25 @@ class CloudreveApp extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return
|
||||
MultiProvider(
|
||||
providers: [
|
||||
ChangeNotifierProvider(create: (_) => ThemeProvider()..init()),
|
||||
ChangeNotifierProvider(create: (_) => AuthProvider()..init()),
|
||||
ChangeNotifierProvider(create: (_) => FileManagerProvider()),
|
||||
ChangeNotifierProvider(create: (_) => NavigationProvider()),
|
||||
ChangeNotifierProvider(create: (_) => UploadService()),
|
||||
ChangeNotifierProvider(create: (_) => UploadManagerProvider()..initialize()),
|
||||
ChangeNotifierProvider(create: (_) => DownloadManagerProvider()..initialize()),
|
||||
ChangeNotifierProvider(create: (_) => UserSettingProvider()),
|
||||
ChangeNotifierProvider(create: (_) => AdminProvider()),
|
||||
],
|
||||
child: const AppView(),
|
||||
);
|
||||
return MultiProvider(
|
||||
providers: [
|
||||
ChangeNotifierProvider(create: (_) => ThemeProvider()..init()),
|
||||
ChangeNotifierProvider(create: (_) => AuthProvider()..init()),
|
||||
ChangeNotifierProvider(create: (_) => FileManagerProvider()),
|
||||
ChangeNotifierProvider(create: (_) => NavigationProvider()),
|
||||
ChangeNotifierProvider(create: (_) => UploadService()),
|
||||
ChangeNotifierProvider(
|
||||
create: (_) => UploadManagerProvider()..initialize(),
|
||||
),
|
||||
ChangeNotifierProvider(
|
||||
create: (_) => DownloadManagerProvider()..initialize(),
|
||||
),
|
||||
ChangeNotifierProvider(create: (_) => UserSettingProvider()),
|
||||
ChangeNotifierProvider(create: (_) => AdminProvider()),
|
||||
ChangeNotifierProvider(create: (_) => QuickAccessProvider()..load()),
|
||||
],
|
||||
child: const AppView(),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -179,7 +189,9 @@ class AppView extends StatelessWidget {
|
||||
Widget currentWidget = child;
|
||||
if (Platform.isWindows || Platform.isLinux) {
|
||||
currentWidget = Material(
|
||||
color: themeProvider.isDark ? Colors.black.withValues(alpha: 0.92) : Colors.white.withValues(alpha: 0.92),
|
||||
color: themeProvider.isDark
|
||||
? Colors.black.withValues(alpha: 0.92)
|
||||
: Colors.white.withValues(alpha: 0.92),
|
||||
child: ValueListenableBuilder<bool>(
|
||||
valueListenable: videoFullscreenNotifier,
|
||||
builder: (context, isVideoFullscreen, child) {
|
||||
@@ -190,13 +202,9 @@ class AppView extends StatelessWidget {
|
||||
children: [
|
||||
const SizedBox(
|
||||
height: 32,
|
||||
child: DragToMoveArea(
|
||||
child: DesktopTitleBar(),
|
||||
),
|
||||
),
|
||||
Expanded(
|
||||
child: child!,
|
||||
child: DragToMoveArea(child: DesktopTitleBar()),
|
||||
),
|
||||
Expanded(child: child!),
|
||||
],
|
||||
);
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user