mirror of
https://github.com/lollipopkit/flutter_server_box.git
synced 2025-12-17 23:34:24 +01:00
opt.
This commit is contained in:
@@ -3,45 +3,49 @@ import 'dart:io';
|
||||
import 'package:path_provider/path_provider.dart';
|
||||
import 'package:toolbox/core/utils/platform.dart';
|
||||
|
||||
String? _docDir;
|
||||
String? _sftpDir;
|
||||
String? _fontDir;
|
||||
class Paths {
|
||||
static String? _docDir;
|
||||
static String? _sftpDir;
|
||||
static String? _fontDir;
|
||||
|
||||
Future<String> get docDir async {
|
||||
if (_docDir != null) {
|
||||
return _docDir!;
|
||||
}
|
||||
if (isAndroid) {
|
||||
final dir = await getExternalStorageDirectory();
|
||||
if (dir != null) {
|
||||
_docDir = dir.path;
|
||||
return dir.path;
|
||||
static Future<String> get doc async {
|
||||
if (_docDir != null) {
|
||||
return _docDir!;
|
||||
}
|
||||
// fallthrough to getApplicationDocumentsDirectory
|
||||
if (isAndroid) {
|
||||
final dir = await getExternalStorageDirectory();
|
||||
if (dir != null) {
|
||||
_docDir = dir.path;
|
||||
return dir.path;
|
||||
}
|
||||
// fallthrough to getApplicationDocumentsDirectory
|
||||
}
|
||||
final dir = await getApplicationDocumentsDirectory();
|
||||
_docDir = dir.path;
|
||||
return dir.path;
|
||||
}
|
||||
final dir = await getApplicationDocumentsDirectory();
|
||||
_docDir = dir.path;
|
||||
return dir.path;
|
||||
}
|
||||
|
||||
Future<String> get sftpDir async {
|
||||
if (_sftpDir != null) {
|
||||
static Future<String> get sftp async {
|
||||
if (_sftpDir != null) {
|
||||
return _sftpDir!;
|
||||
}
|
||||
_sftpDir = '${await doc}/sftp';
|
||||
final dir = Directory(_sftpDir!);
|
||||
await dir.create(recursive: true);
|
||||
return _sftpDir!;
|
||||
}
|
||||
_sftpDir = '${await docDir}/sftp';
|
||||
final dir = Directory(_sftpDir!);
|
||||
await dir.create(recursive: true);
|
||||
return _sftpDir!;
|
||||
}
|
||||
|
||||
Future<String> get fontDir async {
|
||||
if (_fontDir != null) {
|
||||
static Future<String> get font async {
|
||||
if (_fontDir != null) {
|
||||
return _fontDir!;
|
||||
}
|
||||
_fontDir = '${await doc}/font';
|
||||
final dir = Directory(_fontDir!);
|
||||
await dir.create(recursive: true);
|
||||
return _fontDir!;
|
||||
}
|
||||
_fontDir = '${await docDir}/font';
|
||||
final dir = Directory(_fontDir!);
|
||||
await dir.create(recursive: true);
|
||||
return _fontDir!;
|
||||
}
|
||||
|
||||
Future<String> get backupPath async => '${await docDir}/srvbox_bak.json';
|
||||
static Future<String> get bak async => '${await doc}/srvbox_bak.json';
|
||||
|
||||
static Future<String> get dl async => joinPath(await doc, 'dl');
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user