@@ -24,8 +24,6 @@ class SystemInfo {
24
24
static const String _kIPhoneOsName = "iOS" ;
25
25
static const String _kMacOsName = "macOS" ;
26
26
static const String _kWindowsOsName = "Windows" ;
27
- static const String _kWebOsName = "" ;
28
- static const String _kWebOsVersion = "" ;
29
27
30
28
static const String _kUnknownOsVersion = "" ;
31
29
static const String _kIpadModelString = "ipad" ;
@@ -36,9 +34,13 @@ class SystemInfo {
36
34
37
35
final packageInfo = await PackageInfo .fromPlatform ();
38
36
37
+ final osVersion = osInfo.version.length > 100
38
+ ? osInfo.version.substring (0 , 100 )
39
+ : osInfo.version;
40
+
39
41
return SystemInfo ._(
40
42
osName: osInfo.name,
41
- osVersion: osInfo.version ,
43
+ osVersion: osVersion ,
42
44
locale: Platform .localeName,
43
45
buildNumber: packageInfo.buildNumber,
44
46
appVersion: packageInfo.version,
@@ -47,11 +49,16 @@ class SystemInfo {
47
49
48
50
/// Returns info (name and version) of the operating system.
49
51
static Future <({String name, String version})> _getOsInfo () async {
52
+ final deviceInfo = DeviceInfoPlugin ();
53
+
50
54
if (kIsWeb) {
51
- return (name: _kWebOsName, version: _kWebOsVersion);
52
- }
55
+ final info = await deviceInfo.webBrowserInfo;
53
56
54
- final deviceInfo = DeviceInfoPlugin ();
57
+ return (
58
+ name: info.browserName.name,
59
+ version: info.appVersion ?? "" ,
60
+ );
61
+ }
55
62
56
63
if (Platform .isAndroid) {
57
64
final info = await deviceInfo.androidInfo;
0 commit comments