mac 1 jaar geleden
bovenliggende
commit
87c9536385
46 gewijzigde bestanden met toevoegingen van 245 en 187 verwijderingen
  1. 8
    0
      ios/Podfile
  2. 6
    6
      ios/Runner.xcodeproj/project.pbxproj
  3. 2
    2
      ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
  4. 120
    122
      ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json
  5. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png
  6. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png
  7. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png
  8. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png
  9. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png
  10. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png
  11. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png
  12. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png
  13. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png
  14. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png
  15. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png
  16. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png
  17. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png
  18. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
  19. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png
  20. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-1024.png
  21. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-20@2x.png
  22. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-20@3x.png
  23. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png
  24. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png
  25. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-38@2x.png
  26. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-38@3x.png
  27. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png
  28. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png
  29. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png
  30. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png
  31. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-64@2x.png
  32. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-64@3x.png
  33. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-68@2x.png
  34. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-76@2x.png
  35. BIN
      ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-83.5@2x.png
  36. 3
    3
      ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json
  37. BIN
      ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png
  38. BIN
      ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png
  39. BIN
      ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png
  40. BIN
      ios/Runner/Assets.xcassets/LaunchImage.imageset/launch_image.png
  41. 51
    37
      ios/Runner/Base.lproj/LaunchScreen.storyboard
  42. 17
    12
      ios/Runner/Info.plist
  43. 2
    2
      lib/models/app.dart
  44. 1
    1
      lib/routes/middleWares.dart
  45. 2
    1
      lib/utils/amap/const_config.dart
  46. 33
    1
      lib/utils/location.dart

+ 8
- 0
ios/Podfile Bestand weergeven

@@ -37,5 +37,13 @@ end
37 37
 post_install do |installer|
38 38
   installer.pods_project.targets.each do |target|
39 39
     flutter_additional_ios_build_settings(target)
40
+    target.build_configurations.each do |config|
41
+      config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] ||= [
42
+        '$(inherited)',
43
+
44
+        ## dart: [PermissionGroup.location, PermissionGroup.locationAlways, PermissionGroup.locationWhenInUse]
45
+        'PERMISSION_LOCATION=1',
46
+      ]
47
+    end
40 48
   end
41 49
 end

+ 6
- 6
ios/Runner.xcodeproj/project.pbxproj Bestand weergeven

@@ -357,7 +357,7 @@
357 357
 				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
358 358
 				GCC_WARN_UNUSED_FUNCTION = YES;
359 359
 				GCC_WARN_UNUSED_VARIABLE = YES;
360
-				IPHONEOS_DEPLOYMENT_TARGET = 14.6;
360
+				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
361 361
 				MTL_ENABLE_DEBUG_INFO = NO;
362 362
 				SDKROOT = iphoneos;
363 363
 				SUPPORTED_PLATFORMS = iphoneos;
@@ -376,7 +376,7 @@
376 376
 				DEVELOPMENT_TEAM = W48DPW925L;
377 377
 				ENABLE_BITCODE = NO;
378 378
 				INFOPLIST_FILE = Runner/Info.plist;
379
-				IPHONEOS_DEPLOYMENT_TARGET = 16.6;
379
+				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
380 380
 				LD_RUNPATH_SEARCH_PATHS = (
381 381
 					"$(inherited)",
382 382
 					"@executable_path/Frameworks",
@@ -436,7 +436,7 @@
436 436
 				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
437 437
 				GCC_WARN_UNUSED_FUNCTION = YES;
438 438
 				GCC_WARN_UNUSED_VARIABLE = YES;
439
-				IPHONEOS_DEPLOYMENT_TARGET = 14.6;
439
+				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
440 440
 				MTL_ENABLE_DEBUG_INFO = YES;
441 441
 				ONLY_ACTIVE_ARCH = YES;
442 442
 				SDKROOT = iphoneos;
@@ -485,7 +485,7 @@
485 485
 				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
486 486
 				GCC_WARN_UNUSED_FUNCTION = YES;
487 487
 				GCC_WARN_UNUSED_VARIABLE = YES;
488
-				IPHONEOS_DEPLOYMENT_TARGET = 14.6;
488
+				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
489 489
 				MTL_ENABLE_DEBUG_INFO = NO;
490 490
 				SDKROOT = iphoneos;
491 491
 				SUPPORTED_PLATFORMS = iphoneos;
@@ -506,7 +506,7 @@
506 506
 				DEVELOPMENT_TEAM = W48DPW925L;
507 507
 				ENABLE_BITCODE = NO;
508 508
 				INFOPLIST_FILE = Runner/Info.plist;
509
-				IPHONEOS_DEPLOYMENT_TARGET = 16.6;
509
+				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
510 510
 				LD_RUNPATH_SEARCH_PATHS = (
511 511
 					"$(inherited)",
512 512
 					"@executable_path/Frameworks",
@@ -530,7 +530,7 @@
530 530
 				DEVELOPMENT_TEAM = W48DPW925L;
531 531
 				ENABLE_BITCODE = NO;
532 532
 				INFOPLIST_FILE = Runner/Info.plist;
533
-				IPHONEOS_DEPLOYMENT_TARGET = 16.6;
533
+				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
534 534
 				LD_RUNPATH_SEARCH_PATHS = (
535 535
 					"$(inherited)",
536 536
 					"@executable_path/Frameworks",

+ 2
- 2
ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme Bestand weergeven

@@ -1,6 +1,6 @@
1 1
 <?xml version="1.0" encoding="UTF-8"?>
2 2
 <Scheme
3
-   LastUpgradeVersion = "1500"
3
+   LastUpgradeVersion = "1300"
4 4
    version = "1.7">
5 5
    <BuildAction
6 6
       parallelizeBuildables = "YES"
@@ -30,7 +30,7 @@
30 30
       shouldAutocreateTestPlan = "YES">
31 31
    </TestAction>
32 32
    <LaunchAction
33
-      buildConfiguration = "Debug"
33
+      buildConfiguration = "Release"
34 34
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
35 35
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
36 36
       launchStyle = "0"

+ 120
- 122
ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json Bestand weergeven

@@ -1,122 +1,120 @@
1
-{
2
-  "images" : [
3
-    {
4
-      "size" : "20x20",
5
-      "idiom" : "iphone",
6
-      "filename" : "Icon-App-20x20@2x.png",
7
-      "scale" : "2x"
8
-    },
9
-    {
10
-      "size" : "20x20",
11
-      "idiom" : "iphone",
12
-      "filename" : "Icon-App-20x20@3x.png",
13
-      "scale" : "3x"
14
-    },
15
-    {
16
-      "size" : "29x29",
17
-      "idiom" : "iphone",
18
-      "filename" : "Icon-App-29x29@1x.png",
19
-      "scale" : "1x"
20
-    },
21
-    {
22
-      "size" : "29x29",
23
-      "idiom" : "iphone",
24
-      "filename" : "Icon-App-29x29@2x.png",
25
-      "scale" : "2x"
26
-    },
27
-    {
28
-      "size" : "29x29",
29
-      "idiom" : "iphone",
30
-      "filename" : "Icon-App-29x29@3x.png",
31
-      "scale" : "3x"
32
-    },
33
-    {
34
-      "size" : "40x40",
35
-      "idiom" : "iphone",
36
-      "filename" : "Icon-App-40x40@2x.png",
37
-      "scale" : "2x"
38
-    },
39
-    {
40
-      "size" : "40x40",
41
-      "idiom" : "iphone",
42
-      "filename" : "Icon-App-40x40@3x.png",
43
-      "scale" : "3x"
44
-    },
45
-    {
46
-      "size" : "60x60",
47
-      "idiom" : "iphone",
48
-      "filename" : "Icon-App-60x60@2x.png",
49
-      "scale" : "2x"
50
-    },
51
-    {
52
-      "size" : "60x60",
53
-      "idiom" : "iphone",
54
-      "filename" : "Icon-App-60x60@3x.png",
55
-      "scale" : "3x"
56
-    },
57
-    {
58
-      "size" : "20x20",
59
-      "idiom" : "ipad",
60
-      "filename" : "Icon-App-20x20@1x.png",
61
-      "scale" : "1x"
62
-    },
63
-    {
64
-      "size" : "20x20",
65
-      "idiom" : "ipad",
66
-      "filename" : "Icon-App-20x20@2x.png",
67
-      "scale" : "2x"
68
-    },
69
-    {
70
-      "size" : "29x29",
71
-      "idiom" : "ipad",
72
-      "filename" : "Icon-App-29x29@1x.png",
73
-      "scale" : "1x"
74
-    },
75
-    {
76
-      "size" : "29x29",
77
-      "idiom" : "ipad",
78
-      "filename" : "Icon-App-29x29@2x.png",
79
-      "scale" : "2x"
80
-    },
81
-    {
82
-      "size" : "40x40",
83
-      "idiom" : "ipad",
84
-      "filename" : "Icon-App-40x40@1x.png",
85
-      "scale" : "1x"
86
-    },
87
-    {
88
-      "size" : "40x40",
89
-      "idiom" : "ipad",
90
-      "filename" : "Icon-App-40x40@2x.png",
91
-      "scale" : "2x"
92
-    },
93
-    {
94
-      "size" : "76x76",
95
-      "idiom" : "ipad",
96
-      "filename" : "Icon-App-76x76@1x.png",
97
-      "scale" : "1x"
98
-    },
99
-    {
100
-      "size" : "76x76",
101
-      "idiom" : "ipad",
102
-      "filename" : "Icon-App-76x76@2x.png",
103
-      "scale" : "2x"
104
-    },
105
-    {
106
-      "size" : "83.5x83.5",
107
-      "idiom" : "ipad",
108
-      "filename" : "Icon-App-83.5x83.5@2x.png",
109
-      "scale" : "2x"
110
-    },
111
-    {
112
-      "size" : "1024x1024",
113
-      "idiom" : "ios-marketing",
114
-      "filename" : "Icon-App-1024x1024@1x.png",
115
-      "scale" : "1x"
116
-    }
117
-  ],
118
-  "info" : {
119
-    "version" : 1,
120
-    "author" : "xcode"
121
-  }
122
-}
1
+{
2
+    "images": [
3
+        {
4
+            "size": "20x20",
5
+            "idiom": "universal",
6
+            "filename": "icon-20@2x.png",
7
+            "scale": "2x",
8
+            "platform": "ios"
9
+        },
10
+        {
11
+            "size": "20x20",
12
+            "idiom": "universal",
13
+            "filename": "icon-20@3x.png",
14
+            "scale": "3x",
15
+            "platform": "ios"
16
+        },
17
+        {
18
+            "size": "29x29",
19
+            "idiom": "universal",
20
+            "filename": "icon-29@2x.png",
21
+            "scale": "2x",
22
+            "platform": "ios"
23
+        },
24
+        {
25
+            "size": "29x29",
26
+            "idiom": "universal",
27
+            "filename": "icon-29@3x.png",
28
+            "scale": "3x",
29
+            "platform": "ios"
30
+        },
31
+        {
32
+            "size": "38x38",
33
+            "idiom": "universal",
34
+            "filename": "icon-38@2x.png",
35
+            "scale": "2x",
36
+            "platform": "ios"
37
+        },
38
+        {
39
+            "size": "38x38",
40
+            "idiom": "universal",
41
+            "filename": "icon-38@3x.png",
42
+            "scale": "3x",
43
+            "platform": "ios"
44
+        },
45
+        {
46
+            "size": "40x40",
47
+            "idiom": "universal",
48
+            "filename": "icon-40@2x.png",
49
+            "scale": "2x",
50
+            "platform": "ios"
51
+        },
52
+        {
53
+            "size": "40x40",
54
+            "idiom": "universal",
55
+            "filename": "icon-40@3x.png",
56
+            "scale": "3x",
57
+            "platform": "ios"
58
+        },
59
+        {
60
+            "size": "60x60",
61
+            "idiom": "universal",
62
+            "filename": "icon-60@2x.png",
63
+            "scale": "2x",
64
+            "platform": "ios"
65
+        },
66
+        {
67
+            "size": "60x60",
68
+            "idiom": "universal",
69
+            "filename": "icon-60@3x.png",
70
+            "scale": "3x",
71
+            "platform": "ios"
72
+        },
73
+        {
74
+            "size": "64x64",
75
+            "idiom": "universal",
76
+            "filename": "icon-64@2x.png",
77
+            "scale": "2x",
78
+            "platform": "ios"
79
+        },
80
+        {
81
+            "size": "64x64",
82
+            "idiom": "universal",
83
+            "filename": "icon-64@3x.png",
84
+            "scale": "3x",
85
+            "platform": "ios"
86
+        },
87
+        {
88
+            "size": "68x68",
89
+            "idiom": "universal",
90
+            "filename": "icon-68@2x.png",
91
+            "scale": "2x",
92
+            "platform": "ios"
93
+        },
94
+        {
95
+            "size": "76x76",
96
+            "idiom": "universal",
97
+            "filename": "icon-76@2x.png",
98
+            "scale": "2x",
99
+            "platform": "ios"
100
+        },
101
+        {
102
+            "size": "83.5x83.5",
103
+            "idiom": "universal",
104
+            "filename": "icon-83.5@2x.png",
105
+            "scale": "2x",
106
+            "platform": "ios"
107
+        },
108
+        {
109
+            "size": "1024x1024",
110
+            "idiom": "universal",
111
+            "filename": "icon-1024.png",
112
+            "scale": "1x",
113
+            "platform": "ios"
114
+        }
115
+    ],
116
+    "info": {
117
+        "version": 1,
118
+        "author": "icon.wuruihong.com"
119
+    }
120
+}

BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-1024.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-20@2x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-20@3x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-38@2x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-38@3x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-64@2x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-64@3x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-68@2x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-76@2x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-83.5@2x.png Bestand weergeven


+ 3
- 3
ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json Bestand weergeven

@@ -2,17 +2,17 @@
2 2
   "images" : [
3 3
     {
4 4
       "idiom" : "universal",
5
-      "filename" : "LaunchImage.png",
5
+      "filename" : "launch_image.png",
6 6
       "scale" : "1x"
7 7
     },
8 8
     {
9 9
       "idiom" : "universal",
10
-      "filename" : "LaunchImage@2x.png",
10
+      "filename" : "launch_image.png",
11 11
       "scale" : "2x"
12 12
     },
13 13
     {
14 14
       "idiom" : "universal",
15
-      "filename" : "LaunchImage@3x.png",
15
+      "filename" : "launch_image.png",
16 16
       "scale" : "3x"
17 17
     }
18 18
   ],

BIN
ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png Bestand weergeven


BIN
ios/Runner/Assets.xcassets/LaunchImage.imageset/launch_image.png Bestand weergeven


+ 51
- 37
ios/Runner/Base.lproj/LaunchScreen.storyboard Bestand weergeven

@@ -1,37 +1,51 @@
1
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="12121" systemVersion="16G29" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
3
-    <dependencies>
4
-        <deployment identifier="iOS"/>
5
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="12089"/>
6
-    </dependencies>
7
-    <scenes>
8
-        <!--View Controller-->
9
-        <scene sceneID="EHf-IW-A2E">
10
-            <objects>
11
-                <viewController id="01J-lp-oVM" sceneMemberID="viewController">
12
-                    <layoutGuides>
13
-                        <viewControllerLayoutGuide type="top" id="Ydg-fD-yQy"/>
14
-                        <viewControllerLayoutGuide type="bottom" id="xbc-2k-c8Z"/>
15
-                    </layoutGuides>
16
-                    <view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
17
-                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
18
-                        <subviews>
19
-                            <imageView opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" image="LaunchImage" translatesAutoresizingMaskIntoConstraints="NO" id="YRO-k0-Ey4">
20
-                            </imageView>
21
-                        </subviews>
22
-                        <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
23
-                        <constraints>
24
-                            <constraint firstItem="YRO-k0-Ey4" firstAttribute="centerX" secondItem="Ze5-6b-2t3" secondAttribute="centerX" id="1a2-6s-vTC"/>
25
-                            <constraint firstItem="YRO-k0-Ey4" firstAttribute="centerY" secondItem="Ze5-6b-2t3" secondAttribute="centerY" id="4X2-HB-R7a"/>
26
-                        </constraints>
27
-                    </view>
28
-                </viewController>
29
-                <placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
30
-            </objects>
31
-            <point key="canvasLocation" x="53" y="375"/>
32
-        </scene>
33
-    </scenes>
34
-    <resources>
35
-        <image name="LaunchImage" width="168" height="185"/>
36
-    </resources>
37
-</document>
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="22155" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
3
+    <device id="retina6_12" orientation="portrait" appearance="light"/>
4
+    <dependencies>
5
+        <deployment identifier="iOS"/>
6
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22131"/>
7
+        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
8
+    </dependencies>
9
+    <scenes>
10
+        <!--View Controller-->
11
+        <scene sceneID="EHf-IW-A2E">
12
+            <objects>
13
+                <viewController id="01J-lp-oVM" sceneMemberID="viewController">
14
+                    <layoutGuides>
15
+                        <viewControllerLayoutGuide type="top" id="Ydg-fD-yQy"/>
16
+                        <viewControllerLayoutGuide type="bottom" id="xbc-2k-c8Z"/>
17
+                    </layoutGuides>
18
+                    <view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
19
+                        <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
20
+                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
21
+                        <subviews>
22
+                            <imageView opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" misplaced="YES" image="LaunchImage" translatesAutoresizingMaskIntoConstraints="NO" id="YRO-k0-Ey4">
23
+                                <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
24
+                            </imageView>
25
+                        </subviews>
26
+                        <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
27
+                        <constraints>
28
+                            <constraint firstItem="YRO-k0-Ey4" firstAttribute="centerX" secondItem="Ze5-6b-2t3" secondAttribute="centerX" id="1a2-6s-vTC"/>
29
+                            <constraint firstAttribute="trailing" secondItem="YRO-k0-Ey4" secondAttribute="trailing" id="2Ir-dr-I9E"/>
30
+                            <constraint firstItem="YRO-k0-Ey4" firstAttribute="centerY" secondItem="Ze5-6b-2t3" secondAttribute="centerY" id="4X2-HB-R7a"/>
31
+                            <constraint firstItem="YRO-k0-Ey4" firstAttribute="leading" secondItem="Ze5-6b-2t3" secondAttribute="leadingMargin" id="8WK-cp-N0P"/>
32
+                            <constraint firstItem="YRO-k0-Ey4" firstAttribute="leading" secondItem="Ze5-6b-2t3" secondAttribute="leadingMargin" id="OLO-Ah-HPe"/>
33
+                            <constraint firstAttribute="trailingMargin" secondItem="YRO-k0-Ey4" secondAttribute="trailing" id="UbQ-0P-5bg"/>
34
+                            <constraint firstItem="YRO-k0-Ey4" firstAttribute="top" secondItem="Ydg-fD-yQy" secondAttribute="bottom" id="dET-yY-y60"/>
35
+                            <constraint firstItem="YRO-k0-Ey4" firstAttribute="trailing" secondItem="Ze5-6b-2t3" secondAttribute="trailingMargin" id="g8F-BY-1KV"/>
36
+                            <constraint firstItem="xbc-2k-c8Z" firstAttribute="top" secondItem="YRO-k0-Ey4" secondAttribute="bottom" id="pVb-at-qAM"/>
37
+                            <constraint firstItem="YRO-k0-Ey4" firstAttribute="top" secondItem="Ydg-fD-yQy" secondAttribute="bottom" id="pd6-Dh-xkO"/>
38
+                            <constraint firstItem="YRO-k0-Ey4" firstAttribute="leading" secondItem="Ze5-6b-2t3" secondAttribute="leading" id="rlJ-WX-BcC"/>
39
+                            <constraint firstItem="xbc-2k-c8Z" firstAttribute="top" secondItem="YRO-k0-Ey4" secondAttribute="bottom" id="yaO-o1-vZv"/>
40
+                        </constraints>
41
+                    </view>
42
+                </viewController>
43
+                <placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
44
+            </objects>
45
+            <point key="canvasLocation" x="80.152671755725194" y="264.08450704225356"/>
46
+        </scene>
47
+    </scenes>
48
+    <resources>
49
+        <image name="LaunchImage" width="250" height="541.33331298828125"/>
50
+    </resources>
51
+</document>

+ 17
- 12
ios/Runner/Info.plist Bestand weergeven

@@ -2,10 +2,12 @@
2 2
 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3 3
 <plist version="1.0">
4 4
 <dict>
5
+	<key>CADisableMinimumFrameDurationOnPhone</key>
6
+	<true/>
5 7
 	<key>CFBundleDevelopmentRegion</key>
6 8
 	<string>$(DEVELOPMENT_LANGUAGE)</string>
7 9
 	<key>CFBundleDisplayName</key>
8
-	<string>Farmer Client</string>
10
+	<string>农忙助手</string>
9 11
 	<key>CFBundleExecutable</key>
10 12
 	<string>$(EXECUTABLE_NAME)</string>
11 13
 	<key>CFBundleIdentifier</key>
@@ -24,12 +26,23 @@
24 26
 	<string>$(FLUTTER_BUILD_NUMBER)</string>
25 27
 	<key>LSRequiresIPhoneOS</key>
26 28
 	<true/>
29
+	<key>NSAppTransportSecurity</key>
30
+	<dict>
31
+		<key>NSAllowsArbitraryLoads</key>
32
+		<true/>
33
+	</dict>
34
+	<key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
35
+	<string>需要您提供定位信息,才能使用获取您附近的农机</string>
36
+	<key>NSLocationAlwaysUsageDescription</key>
37
+	<string>需要您提供后台定位信息,才能使用获取您附近的农机</string>
38
+	<key>NSLocationUsageDescription</key>
39
+	<string>需要您提供定位信息,才能使用获取您附近的农机</string>
40
+	<key>NSLocationWhenInUseUsageDescription</key>
41
+	<string>需要您提供定位信息,才能使用获取您附近的农机</string>
27 42
 	<key>UILaunchStoryboardName</key>
28 43
 	<string>LaunchScreen</string>
29 44
 	<key>UIMainStoryboardFile</key>
30 45
 	<string>Main</string>
31
-	<key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
32
-	<string>需要您提供定位信息,才能使用获取您附近的农机</string>
33 46
 	<key>UISupportedInterfaceOrientations</key>
34 47
 	<array>
35 48
 		<string>UIInterfaceOrientationPortrait</string>
@@ -45,15 +58,7 @@
45 58
 	</array>
46 59
 	<key>UIViewControllerBasedStatusBarAppearance</key>
47 60
 	<false/>
48
-	<key>CADisableMinimumFrameDurationOnPhone</key>
49
-	<true/>
50 61
 	<key>io.flutter.embedded_views_preview</key>
51
-	<string>YES</string>	
52
-	<key>NSLocationAlwaysUsageDescription</key>
53
-	<string>需要您提供后台定位信息,才能使用获取您附近的农机</string>
54
-	<key>NSLocationUsageDescription</key>
55
-	<string>需要您提供定位信息,才能使用获取您附近的农机</string>
56
-	<key>NSLocationWhenInUseUsageDescription</key>
57
-	<string>需要您提供定位信息,才能使用获取您附近的农机</string>
62
+	<string>YES</string>
58 63
 </dict>
59 64
 </plist>

+ 2
- 2
lib/models/app.dart Bestand weergeven

@@ -22,8 +22,8 @@ class AppController extends GetxController {
22 22
     if (null == location.value) return null;
23 23
 
24 24
     // 不知道什么问题, 模拟器中 lng 是负值
25
-    double longitude = (location.value!['longitude'] as double).abs();
26
-    double latitude = (location.value!['latitude'] as double).abs();
25
+    String longitude = location.value!['longitude'] as String;
26
+    String latitude = location.value!['latitude'] as String;
27 27
 
28 28
     return longitude.toString() + "," + latitude.toString();
29 29
   }

+ 1
- 1
lib/routes/middleWares.dart Bestand weergeven

@@ -22,7 +22,7 @@ void routingCallback(routing) {
22 22
       // addPostFrameCallback 作用是等当前帧绘制完成之后再加载
23 23
       // https://github.com/jonataslaw/getx/issues/262
24 24
       SchedulerBinding.instance
25
-          .addPostFrameCallback((_) => Get.offNamed('/login'));
25
+          ?.addPostFrameCallback((_) => Get.offNamed('/login'));
26 26
     }
27 27
   }
28 28
 

+ 2
- 1
lib/utils/amap/const_config.dart Bestand weergeven

@@ -7,7 +7,8 @@ class ConstConfig {
7 7
   ///注意:使用[AMapWidget]的`apiKey`属性设置的key的优先级高于通过Native配置key的优先级,
8 8
   ///使用[AMapWidget]的`apiKey`属性配置后Native配置的key将失效,请根据实际情况选择使用
9 9
   static const AMapApiKey amapApiKeys = AMapApiKey(
10
-      androidKey: 'b481b4187e24e625fa0056fd0530e663', iosKey: '您申请的iOS平台的key');
10
+      androidKey: 'b481b4187e24e625fa0056fd0530e663',
11
+      iosKey: 'a9a54283083e0f1677ffc3b1324b15a4');
11 12
 
12 13
   ///高德隐私合规声明,这里只是示例,实际使用中请按照实际参数设置[AMapPrivacyStatement]的'hasContains''hasShow''hasAgree'这三个参数
13 14
   ///

+ 33
- 1
lib/utils/location.dart Bestand weergeven

@@ -56,7 +56,8 @@ Future requireLocation(AMAPListener listener) async {
56 56
   AMapFlutterLocation.setApiKey(
57 57
       ConstConfig.amapApiKeys.androidKey!, ConstConfig.amapApiKeys.iosKey!);
58 58
   showPrivacy();
59
-  await _requirePermission();
59
+  // await _requirePermission();
60
+  await checkPermission();
60 61
   final AMapFlutterLocation location = AMapFlutterLocation();
61 62
   location.onLocationChanged().listen(listener);
62 63
   location.setLocationOption(_getAMapLocationOption());
@@ -141,3 +142,34 @@ _getAMapLocationOption() {
141 142
 //
142 143
 //   return location;
143 144
 // }
145
+
146
+//判断是否有权限
147
+Future checkPermission() async {
148
+  Permission permission = Permission.locationAlways;
149
+  PermissionStatus status = await permission.status;
150
+  print('检测权限 $status');
151
+  if (status.isGranted) {
152
+    //权限通过
153
+  } else if (status.isDenied) {
154
+    //权限拒绝, 需要区分IOS和Android,二者不一样
155
+    requestPermission(permission);
156
+  } else if (status.isPermanentlyDenied) {
157
+    //权限永久拒绝,且不在提示,需要进入设置界面
158
+    openAppSettings();
159
+  } else if (status.isRestricted) {
160
+    //活动限制(例如,设置了家长///控件,仅在iOS以上受支持。
161
+    openAppSettings();
162
+  } else {
163
+    //第一次申请
164
+    requestPermission(permission);
165
+  }
166
+}
167
+
168
+//申请权限
169
+Future requestPermission(Permission permission) async {
170
+  PermissionStatus status = await permission.request();
171
+  print('权限状态 $status');
172
+  if (!status.isGranted) {
173
+    openAppSettings();
174
+  }
175
+}