From 7dcae59c1f87b2a3fd23d017187387f66aef244f Mon Sep 17 00:00:00 2001 From: dmdm Date: Thu, 11 Nov 2021 16:42:51 +0300 Subject: [PATCH] donne --- Maptask/Maptask.xcodeproj/project.pbxproj | 351 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../UserInterfaceState.xcuserstate | Bin 0 -> 19691 bytes .../xcschemes/xcschememanagement.plist | 14 + Maptask/Maptask/AppDelegate.swift | 36 ++ .../AccentColor.colorset/Contents.json | 11 + .../AppIcon.appiconset/Contents.json | 98 +++++ Maptask/Maptask/Assets.xcassets/Contents.json | 6 + .../Base.lproj/LaunchScreen.storyboard | 25 ++ Maptask/Maptask/Info.plist | 23 ++ Maptask/Maptask/SceneDelegate.swift | 55 +++ Maptask/Maptask/ViewController.swift | 48 +++ 13 files changed, 682 insertions(+) create mode 100644 Maptask/Maptask.xcodeproj/project.pbxproj create mode 100644 Maptask/Maptask.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 Maptask/Maptask.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 Maptask/Maptask.xcodeproj/project.xcworkspace/xcuserdata/deemamohammed.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 Maptask/Maptask.xcodeproj/xcuserdata/deemamohammed.xcuserdatad/xcschemes/xcschememanagement.plist create mode 100644 Maptask/Maptask/AppDelegate.swift create mode 100644 Maptask/Maptask/Assets.xcassets/AccentColor.colorset/Contents.json create mode 100644 Maptask/Maptask/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 Maptask/Maptask/Assets.xcassets/Contents.json create mode 100644 Maptask/Maptask/Base.lproj/LaunchScreen.storyboard create mode 100644 Maptask/Maptask/Info.plist create mode 100644 Maptask/Maptask/SceneDelegate.swift create mode 100644 Maptask/Maptask/ViewController.swift diff --git a/Maptask/Maptask.xcodeproj/project.pbxproj b/Maptask/Maptask.xcodeproj/project.pbxproj new file mode 100644 index 0000000..8d2c91c --- /dev/null +++ b/Maptask/Maptask.xcodeproj/project.pbxproj @@ -0,0 +1,351 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 55; + objects = { + +/* Begin PBXBuildFile section */ + B5C73B2B273D47C00037E83D /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5C73B2A273D47C00037E83D /* AppDelegate.swift */; }; + B5C73B2D273D47C00037E83D /* SceneDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5C73B2C273D47C00037E83D /* SceneDelegate.swift */; }; + B5C73B2F273D47C00037E83D /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5C73B2E273D47C00037E83D /* ViewController.swift */; }; + B5C73B34273D47C20037E83D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = B5C73B33273D47C20037E83D /* Assets.xcassets */; }; + B5C73B37273D47C20037E83D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = B5C73B35273D47C20037E83D /* LaunchScreen.storyboard */; }; +/* End PBXBuildFile section */ + +/* Begin PBXFileReference section */ + B5C73B27273D47C00037E83D /* Maptask.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Maptask.app; sourceTree = BUILT_PRODUCTS_DIR; }; + B5C73B2A273D47C00037E83D /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + B5C73B2C273D47C00037E83D /* SceneDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SceneDelegate.swift; sourceTree = ""; }; + B5C73B2E273D47C00037E83D /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; + B5C73B33273D47C20037E83D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + B5C73B36273D47C20037E83D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + B5C73B38273D47C20037E83D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + B5C73B24273D47C00037E83D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + B5C73B1E273D47C00037E83D = { + isa = PBXGroup; + children = ( + B5C73B29273D47C00037E83D /* Maptask */, + B5C73B28273D47C00037E83D /* Products */, + ); + sourceTree = ""; + }; + B5C73B28273D47C00037E83D /* Products */ = { + isa = PBXGroup; + children = ( + B5C73B27273D47C00037E83D /* Maptask.app */, + ); + name = Products; + sourceTree = ""; + }; + B5C73B29273D47C00037E83D /* Maptask */ = { + isa = PBXGroup; + children = ( + B5C73B2A273D47C00037E83D /* AppDelegate.swift */, + B5C73B2C273D47C00037E83D /* SceneDelegate.swift */, + B5C73B2E273D47C00037E83D /* ViewController.swift */, + B5C73B33273D47C20037E83D /* Assets.xcassets */, + B5C73B35273D47C20037E83D /* LaunchScreen.storyboard */, + B5C73B38273D47C20037E83D /* Info.plist */, + ); + path = Maptask; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + B5C73B26273D47C00037E83D /* Maptask */ = { + isa = PBXNativeTarget; + buildConfigurationList = B5C73B3B273D47C20037E83D /* Build configuration list for PBXNativeTarget "Maptask" */; + buildPhases = ( + B5C73B23273D47C00037E83D /* Sources */, + B5C73B24273D47C00037E83D /* Frameworks */, + B5C73B25273D47C00037E83D /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Maptask; + productName = Maptask; + productReference = B5C73B27273D47C00037E83D /* Maptask.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + B5C73B1F273D47C00037E83D /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = 1; + LastSwiftUpdateCheck = 1310; + LastUpgradeCheck = 1310; + TargetAttributes = { + B5C73B26273D47C00037E83D = { + CreatedOnToolsVersion = 13.1; + }; + }; + }; + buildConfigurationList = B5C73B22273D47C00037E83D /* Build configuration list for PBXProject "Maptask" */; + compatibilityVersion = "Xcode 13.0"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = B5C73B1E273D47C00037E83D; + productRefGroup = B5C73B28273D47C00037E83D /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + B5C73B26273D47C00037E83D /* Maptask */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + B5C73B25273D47C00037E83D /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + B5C73B37273D47C20037E83D /* LaunchScreen.storyboard in Resources */, + B5C73B34273D47C20037E83D /* Assets.xcassets in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + B5C73B23273D47C00037E83D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + B5C73B2F273D47C00037E83D /* ViewController.swift in Sources */, + B5C73B2B273D47C00037E83D /* AppDelegate.swift in Sources */, + B5C73B2D273D47C00037E83D /* SceneDelegate.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + B5C73B35273D47C20037E83D /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + B5C73B36273D47C20037E83D /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + B5C73B39273D47C20037E83D /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + B5C73B3A273D47C20037E83D /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + B5C73B3C273D47C20037E83D /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEVELOPMENT_TEAM = 88QY68DD2P; + GENERATE_INFOPLIST_FILE = YES; + INFOPLIST_FILE = Maptask/Info.plist; + INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; + INFOPLIST_KEY_UILaunchStoryboardName = LaunchScreen; + INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; + INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.deemaalkamdi.Maptask; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_EMIT_LOC_STRINGS = YES; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + B5C73B3D273D47C20037E83D /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEVELOPMENT_TEAM = 88QY68DD2P; + GENERATE_INFOPLIST_FILE = YES; + INFOPLIST_FILE = Maptask/Info.plist; + INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; + INFOPLIST_KEY_UILaunchStoryboardName = LaunchScreen; + INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; + INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.deemaalkamdi.Maptask; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_EMIT_LOC_STRINGS = YES; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + B5C73B22273D47C00037E83D /* Build configuration list for PBXProject "Maptask" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + B5C73B39273D47C20037E83D /* Debug */, + B5C73B3A273D47C20037E83D /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + B5C73B3B273D47C20037E83D /* Build configuration list for PBXNativeTarget "Maptask" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + B5C73B3C273D47C20037E83D /* Debug */, + B5C73B3D273D47C20037E83D /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = B5C73B1F273D47C00037E83D /* Project object */; +} diff --git a/Maptask/Maptask.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/Maptask/Maptask.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/Maptask/Maptask.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/Maptask/Maptask.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Maptask/Maptask.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/Maptask/Maptask.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/Maptask/Maptask.xcodeproj/project.xcworkspace/xcuserdata/deemamohammed.xcuserdatad/UserInterfaceState.xcuserstate b/Maptask/Maptask.xcodeproj/project.xcworkspace/xcuserdata/deemamohammed.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..3709e52a94ad566e8a6cc3db352ce912de209747 GIT binary patch literal 19691 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 B=8^ya literal 0 HcmV?d00001 diff --git a/Maptask/Maptask.xcodeproj/xcuserdata/deemamohammed.xcuserdatad/xcschemes/xcschememanagement.plist b/Maptask/Maptask.xcodeproj/xcuserdata/deemamohammed.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..bcb7309 --- /dev/null +++ b/Maptask/Maptask.xcodeproj/xcuserdata/deemamohammed.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,14 @@ + + + + + SchemeUserState + + Maptask.xcscheme_^#shared#^_ + + orderHint + 0 + + + + diff --git a/Maptask/Maptask/AppDelegate.swift b/Maptask/Maptask/AppDelegate.swift new file mode 100644 index 0000000..7e2bb84 --- /dev/null +++ b/Maptask/Maptask/AppDelegate.swift @@ -0,0 +1,36 @@ +// +// AppDelegate.swift +// Maptask +// +// Created by dmdm on 11/11/2021. +// + +import UIKit + +@main +class AppDelegate: UIResponder, UIApplicationDelegate { + + + + func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { + // Override point for customization after application launch. + return true + } + + // MARK: UISceneSession Lifecycle + + func application(_ application: UIApplication, configurationForConnecting connectingSceneSession: UISceneSession, options: UIScene.ConnectionOptions) -> UISceneConfiguration { + // Called when a new scene session is being created. + // Use this method to select a configuration to create the new scene with. + return UISceneConfiguration(name: "Default Configuration", sessionRole: connectingSceneSession.role) + } + + func application(_ application: UIApplication, didDiscardSceneSessions sceneSessions: Set) { + // Called when the user discards a scene session. + // If any sessions were discarded while the application was not running, this will be called shortly after application:didFinishLaunchingWithOptions. + // Use this method to release any resources that were specific to the discarded scenes, as they will not return. + } + + +} + diff --git a/Maptask/Maptask/Assets.xcassets/AccentColor.colorset/Contents.json b/Maptask/Maptask/Assets.xcassets/AccentColor.colorset/Contents.json new file mode 100644 index 0000000..eb87897 --- /dev/null +++ b/Maptask/Maptask/Assets.xcassets/AccentColor.colorset/Contents.json @@ -0,0 +1,11 @@ +{ + "colors" : [ + { + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Maptask/Maptask/Assets.xcassets/AppIcon.appiconset/Contents.json b/Maptask/Maptask/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..9221b9b --- /dev/null +++ b/Maptask/Maptask/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,98 @@ +{ + "images" : [ + { + "idiom" : "iphone", + "scale" : "2x", + "size" : "20x20" + }, + { + "idiom" : "iphone", + "scale" : "3x", + "size" : "20x20" + }, + { + "idiom" : "iphone", + "scale" : "2x", + "size" : "29x29" + }, + { + "idiom" : "iphone", + "scale" : "3x", + "size" : "29x29" + }, + { + "idiom" : "iphone", + "scale" : "2x", + "size" : "40x40" + }, + { + "idiom" : "iphone", + "scale" : "3x", + "size" : "40x40" + }, + { + "idiom" : "iphone", + "scale" : "2x", + "size" : "60x60" + }, + { + "idiom" : "iphone", + "scale" : "3x", + "size" : "60x60" + }, + { + "idiom" : "ipad", + "scale" : "1x", + "size" : "20x20" + }, + { + "idiom" : "ipad", + "scale" : "2x", + "size" : "20x20" + }, + { + "idiom" : "ipad", + "scale" : "1x", + "size" : "29x29" + }, + { + "idiom" : "ipad", + "scale" : "2x", + "size" : "29x29" + }, + { + "idiom" : "ipad", + "scale" : "1x", + "size" : "40x40" + }, + { + "idiom" : "ipad", + "scale" : "2x", + "size" : "40x40" + }, + { + "idiom" : "ipad", + "scale" : "1x", + "size" : "76x76" + }, + { + "idiom" : "ipad", + "scale" : "2x", + "size" : "76x76" + }, + { + "idiom" : "ipad", + "scale" : "2x", + "size" : "83.5x83.5" + }, + { + "idiom" : "ios-marketing", + "scale" : "1x", + "size" : "1024x1024" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Maptask/Maptask/Assets.xcassets/Contents.json b/Maptask/Maptask/Assets.xcassets/Contents.json new file mode 100644 index 0000000..73c0059 --- /dev/null +++ b/Maptask/Maptask/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Maptask/Maptask/Base.lproj/LaunchScreen.storyboard b/Maptask/Maptask/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 0000000..865e932 --- /dev/null +++ b/Maptask/Maptask/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Maptask/Maptask/Info.plist b/Maptask/Maptask/Info.plist new file mode 100644 index 0000000..0eb786d --- /dev/null +++ b/Maptask/Maptask/Info.plist @@ -0,0 +1,23 @@ + + + + + UIApplicationSceneManifest + + UIApplicationSupportsMultipleScenes + + UISceneConfigurations + + UIWindowSceneSessionRoleApplication + + + UISceneConfigurationName + Default Configuration + UISceneDelegateClassName + $(PRODUCT_MODULE_NAME).SceneDelegate + + + + + + diff --git a/Maptask/Maptask/SceneDelegate.swift b/Maptask/Maptask/SceneDelegate.swift new file mode 100644 index 0000000..9de2fcb --- /dev/null +++ b/Maptask/Maptask/SceneDelegate.swift @@ -0,0 +1,55 @@ +// +// SceneDelegate.swift +// Maptask +// +// Created by dmdm on 11/11/2021. +// + +import UIKit + +class SceneDelegate: UIResponder, UIWindowSceneDelegate { + + var window: UIWindow? + + + func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) { + // Use this method to optionally configure and attach the UIWindow `window` to the provided UIWindowScene `scene`. + // If using a storyboard, the `window` property will automatically be initialized and attached to the scene. + // This delegate does not imply the connecting scene or session are new (see `application:configurationForConnectingSceneSession` instead). + guard let windowScene = (scene as? UIWindowScene) else { return } + window = UIWindow(frame: UIScreen.main.bounds) + window?.rootViewController = ViewController() + window?.makeKeyAndVisible() + window?.windowScene = windowScene + } + } + + func sceneDidDisconnect(_ scene: UIScene) { + // Called as the scene is being released by the system. + // This occurs shortly after the scene enters the background, or when its session is discarded. + // Release any resources associated with this scene that can be re-created the next time the scene connects. + // The scene may re-connect later, as its session was not necessarily discarded (see `application:didDiscardSceneSessions` instead). + } + + func sceneDidBecomeActive(_ scene: UIScene) { + // Called when the scene has moved from an inactive state to an active state. + // Use this method to restart any tasks that were paused (or not yet started) when the scene was inactive. + } + + func sceneWillResignActive(_ scene: UIScene) { + // Called when the scene will move from an active state to an inactive state. + // This may occur due to temporary interruptions (ex. an incoming phone call). + } + + func sceneWillEnterForeground(_ scene: UIScene) { + // Called as the scene transitions from the background to the foreground. + // Use this method to undo the changes made on entering the background. + } + + func sceneDidEnterBackground(_ scene: UIScene) { + // Called as the scene transitions from the foreground to the background. + // Use this method to save data, release shared resources, and store enough scene-specific state information + // to restore the scene back to its current state. + } + + diff --git a/Maptask/Maptask/ViewController.swift b/Maptask/Maptask/ViewController.swift new file mode 100644 index 0000000..cb22861 --- /dev/null +++ b/Maptask/Maptask/ViewController.swift @@ -0,0 +1,48 @@ +// +// ViewController.swift +// Maptask +// +// Created by dmdm on 11/11/2021. +// + +import UIKit +import MapKit + +class ViewController: UIViewController { + + var locationManager: CLLocationManager! + lazy var mapVC: MKMapView = { + let map = MKMapView() + map.translatesAutoresizingMaskIntoConstraints = false + map.delegate = self + return map + }() + override func viewDidLoad() { + super.viewDidLoad() + if CLLocationManager.locationServicesEnabled(){ + locationManager = CLLocationManager() + locationManager.delegate = self + locationManager.desiredAccuracy = kCLLocationAccuracyBest + locationManager.requestAlwaysAuthorization() + locationManager.startUpdatingLocation() + } + view.addSubview(mapVC) + NSLayoutConstraint.activate([ + mapVC.topAnchor.constraint(equalTo: view.topAnchor), + mapVC.rightAnchor.constraint(equalTo: view.rightAnchor), + mapVC.leftAnchor.constraint(equalTo: view.leftAnchor), mapVC.bottomAnchor.constraint(equalTo: view.bottomAnchor), + ]) + let deema = MKPointAnnotation() + deema.title = "Deema" + deema.coordinate = CLLocationCoordinate2D(latitude: 18.2181, longitude: 42.5055) + mapVC.addAnnotation(deema) + } +} +extension ViewController: MKMapViewDelegate, CLLocationManagerDelegate { + func locationManager(_ manager:CLLocationManager, didUpdateLocations Locations:[CLLocation]) { + guard let lastLocation = Locations.last else + {return} + let lat = lastLocation.coordinate.latitude + let long = lastLocation.coordinate.longitude + } +}