Skip to content

Commit

Permalink
Merge pull request #172 from TeamChaRo/feature/170-setting-automation
Browse files Browse the repository at this point in the history
Feature/170 setting automation
  • Loading branch information
hryeong66 authored Dec 28, 2021
2 parents 8a4cdca + 54dca75 commit c2db5f2
Show file tree
Hide file tree
Showing 123 changed files with 21,438 additions and 14 deletions.
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ iOSInjectionProject/

#피드백을 위해 잠시 깃에 올림
#Delete TmapSDK
*/TMapSDK.framework
#*/TMapSDK.framework

#Delete privacy file
#*/MapService.swift
Expand Down
179 changes: 177 additions & 2 deletions ChaRo-iOS/ChaRo-iOS.xcodeproj/project.pbxproj

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1320"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "3C71FEA226881DAA007E8EAD"
BuildableName = "ChaRo-iOS.app"
BlueprintName = "ChaRo-iOS"
ReferencedContainer = "container:ChaRo-iOS.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
<TestableReference
skipped = "NO">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "3C89542B277B24D500303B73"
BuildableName = "ChaRo-iOSTests.xctest"
BlueprintName = "ChaRo-iOSTests"
ReferencedContainer = "container:ChaRo-iOS.xcodeproj">
</BuildableReference>
</TestableReference>
</Testables>
</TestAction>
<LaunchAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "3C71FEA226881DAA007E8EAD"
BuildableName = "ChaRo-iOS.app"
BlueprintName = "ChaRo-iOS"
ReferencedContainer = "container:ChaRo-iOS.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
debugDocumentVersioning = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "3C71FEA226881DAA007E8EAD"
BuildableName = "ChaRo-iOS.app"
BlueprintName = "ChaRo-iOS"
ReferencedContainer = "container:ChaRo-iOS.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import Foundation

// MARK: - MypageLikeWrite
struct MypageInpinityModel: Codable {
struct MypageInfinityModel: Codable {
let success: Bool
let msg: String
let data: MyPagePost
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ struct MypageInfinityService
private func isValidData(data : Data) -> NetworkResult<Any> {

let decoder = JSONDecoder()
guard let decodedData = try? decoder.decode(MypageInpinityModel.self, from: data)
guard let decodedData = try? decoder.decode(MypageInfinityModel.self, from: data)
else {return .pathErr}
return .success(decodedData)

Expand Down
2 changes: 1 addition & 1 deletion ChaRo-iOS/ChaRo-iOS/Source/Support/AppDelegate.swift
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
}

// [END register_for_notifications]
KakaoSDKCommon.initSDK(appKey: "fe470f9e3a4348f2b8dad52d2014efcc")
KakaoSDK.initSDK(appKey: "fe470f9e3a4348f2b8dad52d2014efcc")
return true
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -253,7 +253,7 @@ class MyPageVC: UIViewController {
switch response
{
case .success(let data) :
if let response = data as? MypageInpinityModel{
if let response = data as? MypageInfinityModel{
if response.data.lastID == 0{
self.isLast = true
self.delegate?.endIndicator()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -343,7 +343,7 @@ class OtherMyPageVC: UIViewController {
switch response
{
case .success(let data) :
if let response = data as? MypageInpinityModel{
if let response = data as? MypageInfinityModel{
if response.data.lastID == 0{
self.isLast = true
self.delegate?.endIndicator()
Expand Down
36 changes: 36 additions & 0 deletions ChaRo-iOS/ChaRo-iOSTests/ChaRo_iOSTests.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
//
// ChaRo_iOSTests.swift
// ChaRo-iOSTests
//
// Created by 장혜령 on 2021/12/28.
//

import XCTest

class ChaRo_iOSTests: XCTestCase {

override func setUpWithError() throws {
// Put setup code here. This method is called before the invocation of each test method in the class.
}

override func tearDownWithError() throws {
// Put teardown code here. This method is called after the invocation of each test method in the class.
}

func testExample() throws {
// This is an example of a functional test case.
// Use XCTAssert and related functions to verify your tests produce the correct results.
// Any test you write for XCTest can be annotated as throws and async.
// Mark your test throws to produce an unexpected failure when your test encounters an uncaught error.
// Mark your test async to allow awaiting for asynchronous code to complete. Check the results with assertions afterwards.
XCTAssert(true)
}

func testPerformanceExample() throws {
// This is an example of a performance test case.
measure {
// Put the code you want to measure the time of here.
}
}

}
19 changes: 13 additions & 6 deletions ChaRo-iOS/Podfile
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'
# Comment the next line if you don't want to use dynamic frameworks
use_frameworks!

target 'ChaRo-iOS' do
# Comment the next line if you don't want to use dynamic frameworks
use_frameworks!

# Pods for ChaRo-iOS
pod 'SnapKit', '~> 5.0.0'
def pods
pod 'SnapKit', '~> 5.0.0'
pod 'Alamofire', '~> 5.4'
pod 'lottie-ios'
pod 'Kingfisher', '~> 6.0'
Expand All @@ -20,3 +18,12 @@ pod 'SnapKit', '~> 5.0.0'
pod 'KakaoSDKCommon'
pod 'KakaoSDKAuth'
end

target 'ChaRo-iOS' do
pods
end

target 'ChaRo-iOSTests' do
pods
end

Binary file added ChaRo-iOS/TMapSDK.framework/Assets.car
Binary file not shown.
41 changes: 41 additions & 0 deletions ChaRo-iOS/TMapSDK.framework/Headers/MGLAccountManager.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
#import <Foundation/Foundation.h>

#import "MGLFoundation.h"

NS_ASSUME_NONNULL_BEGIN

/**
The `MGLAccountManager` object provides a global way to set a Mapbox API access
token.
*/
MGL_EXPORT
@interface MGLAccountManager : NSObject

#pragma mark Authorizing Access

/**
The
<a href="https://docs.mapbox.com/help/glossary/access-token/">Mapbox access token</a>
used by all instances of `MGLMapView` in the current application.
Mapbox-hosted vector tiles and styles require an API access token, which you
can obtain from the
<a href="https://www.mapbox.com/studio/account/tokens/">Mapbox account page</a>.
Access tokens associate requests to Mapbox’s vector tile and style APIs with
your Mapbox account. They also deter other developers from using your styles
without your permission.
Setting this property to a value of `nil` has no effect.
@note You must set the access token before attempting to load any Mapbox-hosted
style. Therefore, you should generally set it before creating an instance of
`MGLMapView`. The recommended way to set an access token is to add an entry
to your application’s Info.plist file with the key `MGLMapboxAccessToken`
and the type `String`. Alternatively, you may call this method from your
application delegate’s `-applicationDidFinishLaunching:` method.
*/
@property (class, assign, nullable) NSString *accessToken;

@end

NS_ASSUME_NONNULL_END
65 changes: 65 additions & 0 deletions ChaRo-iOS/TMapSDK.framework/Headers/MGLAnnotation.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
#import <Foundation/Foundation.h>
#import <CoreLocation/CoreLocation.h>
#import <TargetConditionals.h>

NS_ASSUME_NONNULL_BEGIN

/**
The `MGLAnnotation` protocol is used to provide annotation-related information
to a map view. To use this protocol, you adopt it in any custom objects that
store or represent annotation data. Each object then serves as the source of
information about a single map annotation and provides critical information,
such as the annotation’s location on the map. Annotation objects do not provide
the visual representation of the annotation but typically coordinate (in
conjunction with the map view’s delegate) the creation of an appropriate
objects to handle the display.
An object that adopts this protocol must implement the `coordinate` property.
The other methods of this protocol are optional.
#### Related examples
See the <a href="https://docs.mapbox.com/ios/maps/examples/annotation-models/">
Annotation models</a> and <a href="https://docs.mapbox.com/ios/maps/examples/annotation-views/">
Annotation views</a> examples to learn how to add objects that follow the
`MGLAnnotation` protocol.
*/
@protocol MGLAnnotation <NSObject>

#pragma mark Position Attributes

/**
The center point (specified as a map coordinate) of the annotation. (required)
(read-only)
*/
@property (nonatomic, readonly) CLLocationCoordinate2D coordinate;

@optional

#pragma mark Title Attributes

/**
The string containing the annotation’s title.
Although this property is optional, if you support the selection of annotations
in your map view, you are expected to provide this property. This string is
displayed in the callout for the associated annotation.
*/
@property (nonatomic, readonly, copy, nullable) NSString *title;

/**
The string containing the annotation’s subtitle.
This string is displayed in the callout for the associated annotation.
*/
@property (nonatomic, readonly, copy, nullable) NSString *subtitle;

#if !TARGET_OS_IPHONE

/** The string containing the annotation’s tooltip. */
@property (nonatomic, readonly, copy, nullable) NSString *toolTip;

#endif

@end

NS_ASSUME_NONNULL_END
62 changes: 62 additions & 0 deletions ChaRo-iOS/TMapSDK.framework/Headers/MGLAnnotationImage.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
#import <UIKit/UIKit.h>

#import "MGLFoundation.h"

NS_ASSUME_NONNULL_BEGIN

/**
The `MGLAnnotationImage` class is responsible for presenting point-based
annotations visually on a map view. Annotation image objects wrap `UIImage`
objects and may be recycled later and put into a reuse queue that is maintained
by the map view.
#### Related examples
See the <a href="https://docs.mapbox.com/ios/maps/examples/marker-image/">
Mark a place on the map with an image</a> example to learn how use an image
as a marker using `MGLAnnotationImage`.
*/
MGL_EXPORT
@interface MGLAnnotationImage : NSObject <NSSecureCoding>

#pragma mark Initializing and Preparing the Image Object

/**
Initializes and returns a new annotation image object.
@param image The image to be displayed for the annotation.
@param reuseIdentifier The string that identifies that this annotation image is
reusable.
@return The initialized annotation image object or `nil` if there was a problem
initializing the object.
*/
+ (instancetype)annotationImageWithImage:(UIImage *)image reuseIdentifier:(NSString *)reuseIdentifier;

#pragma mark Getting and Setting Attributes

/** The image to be displayed for the annotation. */
@property (nonatomic, strong, nullable) UIImage *image;

/**
The string that identifies that this annotation image is reusable. (read-only)
You specify the reuse identifier when you create the image object. You use this
type later to retrieve an annotation image object that was created previously
but which is currently unused because its annotation is not on screen.
If you define distinctly different types of annotations (with distinctly
different annotation images to go with them), you can differentiate between the
annotation types by specifying different reuse identifiers for each one.
*/
@property (nonatomic, readonly) NSString *reuseIdentifier;

/**
A Boolean value indicating whether the annotation is enabled.
The default value of this property is `YES`. If the value of this property is
`NO`, the annotation image ignores touch events and cannot be selected.
*/
@property (nonatomic, getter=isEnabled) BOOL enabled;

@end

NS_ASSUME_NONNULL_END
Loading

0 comments on commit c2db5f2

Please sign in to comment.