- Notifications
You must be signed in to change notification settings - Fork 9
Expand file tree
/
Copy pathpath_page.dart
More file actions
Latest commit
95 lines (84 loc) · 3.3 KB
/
Copy pathpath_page.dart
File metadata and controls
95 lines (84 loc) · 3.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
import'dart:io';
import'package:flutter/material.dart';
import'package:flutter_util_code/utils.dart';
import'package:flutter_util_code_example/widget/display_screen.dart';
/// Name: Path工具页
/// Created by Fitem on 2023/6/5
classPathPageextendsStatefulWidget {
constPathPage({Key? key}) :super(key: key);
@override
UuidPageStatecreateState() =>UuidPageState();
}
classUuidPageState<UuidPage> extendsState {
finalGlobalKey<DisplayScreenState> globalKey =GlobalKey();
@override
Widgetbuild(BuildContext context) {
returnScaffold(
appBar:AppBar(
title:constText('Path工具类'),
),
body:SizedBox(
width:double.infinity,
height:double.infinity,
child:Column(
children: [
ElevatedButton(onPressed: _handlePath , child:constText('获取系统Path信息')),
constSpacer(),
Expanded(
flex:2,
child:DisplayScreen(key: globalKey)
),
],
),
),
);
}
/// 添加内容
voidaddContent(String content) {
globalKey.currentState?.addContent(content);
}
Future<void> _handlePath() async {
// App缓存目录
String appCachePath =awaitPathUtils.getAppCachePath();
// App支持目录
String appSupportPath =awaitPathUtils.getAppSupportPath();
// App文档目录
String appDocPath =awaitPathUtils.getAppDocPath();
// iOS / Android 通用目录
addContent('App缓存目录: $appCachePath\n');
addContent('App支持目录: $appSupportPath\n');
addContent('App文档目录: $appDocPath\n');
// iOS独有目录
if(Platform.isIOS ||Platform.isMacOS) {
// 下载目录 - 仅iOS
String downloadPath =awaitPathUtils.getDownloadPath();
addContent('下载目录: $downloadPath\n');
} elseif(Platform.isAndroid) {
// Android独有目录
// Android外部存储目录
String androidStoragePath =awaitPathUtils.getAndroidStoragePath();
// Android外部缓存目录
List<String> androidExternalCachePaths =awaitPathUtils.getAndroidExternalCachePaths();
// Android图片目录
List<String> androidPicturePaths =awaitPathUtils.getAndroidPicturePaths();
// Android视频目录
List<String> androidMoviePaths =awaitPathUtils.getAndroidMoviePaths();
// Android音乐目录
List<String> androidMusicPaths =awaitPathUtils.getAndroidMusicPaths();
// Android相机目录
List<String> androidDCIMPaths =awaitPathUtils.getAndroidDCIMPaths();
// Android下载目录
List<String> androidDownloadPaths =awaitPathUtils.getAndroidDownloadPaths();
// Android文档目录
List<String> androidDocumentPaths =awaitPathUtils.getAndroidDocumentPaths();
addContent('Android外部存储目录: $androidStoragePath\n');
addContent('Android外部缓存目录: $androidExternalCachePaths\n');
addContent('Android图片目录: $androidPicturePaths\n');
addContent('Android视频目录: $androidMoviePaths\n');
addContent('Android音乐目录: $androidMusicPaths\n');
addContent('Android相机目录: $androidDCIMPaths\n');
addContent('Android下载目录: $androidDownloadPaths\n');
addContent('Android文档目录: $androidDocumentPaths\n');
}
}
}