diff --git a/hearo/hearo.xcodeproj/project.pbxproj b/hearo/hearo.xcodeproj/project.pbxproj index 14b9090..dbeba6e 100644 --- a/hearo/hearo.xcodeproj/project.pbxproj +++ b/hearo/hearo.xcodeproj/project.pbxproj @@ -45,14 +45,9 @@ 11D7CACE2CDB8C1B00F6B323 /* Pretendard-Medium.otf in Resources */ = {isa = PBXBuildFile; fileRef = 11D7CAC62CDB8C1B00F6B323 /* Pretendard-Medium.otf */; }; 11D7CACF2CDB8C1B00F6B323 /* Pretendard-Regular.otf in Resources */ = {isa = PBXBuildFile; fileRef = 11D7CAC72CDB8C1B00F6B323 /* Pretendard-Regular.otf */; }; 11D7CAD02CDB8C1B00F6B323 /* Pretendard-Light.otf in Resources */ = {isa = PBXBuildFile; fileRef = 11D7CAC52CDB8C1B00F6B323 /* Pretendard-Light.otf */; }; - 11D7CADE2CDBEC6B00F6B323 /* LottieView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 11D7CADD2CDBEC6100F6B323 /* LottieView.swift */; }; 11D7CAE12CDBEDC800F6B323 /* Lottie in Frameworks */ = {isa = PBXBuildFile; productRef = 11D7CAE02CDBEDC800F6B323 /* Lottie */; }; - - 64CB84032CDC86C70069A547 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 64CB84022CDC86C70069A547 /* Assets.xcassets */; }; 64CB84052CDC9CAD0069A547 /* StartOnboardingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 64CB84042CDC9CAD0069A547 /* StartOnboardingView.swift */; }; - - 64F73A252CBAC9F100D2A140 /* HornSoundDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 64F73A242CBAC9F100D2A140 /* HornSoundDetector.swift */; }; 64F73A272CBAD1C000D2A140 /* SoundDetectorViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 64F73A262CBAD1C000D2A140 /* SoundDetectorViewModel.swift */; }; /* End PBXBuildFile section */ @@ -152,15 +147,11 @@ 11D7CAC52CDB8C1B00F6B323 /* Pretendard-Light.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "Pretendard-Light.otf"; sourceTree = ""; }; 11D7CAC62CDB8C1B00F6B323 /* Pretendard-Medium.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "Pretendard-Medium.otf"; sourceTree = ""; }; 11D7CAC72CDB8C1B00F6B323 /* Pretendard-Regular.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "Pretendard-Regular.otf"; sourceTree = ""; }; - - 11D7CADD2CDBEC6100F6B323 /* LottieView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LottieView.swift; sourceTree = ""; }; - + 11D7CADD2CDBEC6100F6B323 /* LottieView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LottieView.swift; sourceTree = ""; }; 64CB84022CDC86C70069A547 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 64CB84042CDC9CAD0069A547 /* StartOnboardingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StartOnboardingView.swift; sourceTree = ""; }; - - - 64F73A242CBAC9F100D2A140 /* HornSoundDetector.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = HornSoundDetector.swift; path = hearo/Sources/Presentations/Working/ViewModel/HornSoundDetector.swift; sourceTree = SOURCE_ROOT; }; - 64F73A262CBAD1C000D2A140 /* SoundDetectorViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = SoundDetectorViewModel.swift; path = hearo/Sources/Presentations/Working/ViewModel/SoundDetectorViewModel.swift; sourceTree = SOURCE_ROOT; }; + 64F73A242CBAC9F100D2A140 /* HornSoundDetector.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = HornSoundDetector.swift; path = hearo/Sources/Helper/HornSoundDetector.swift; sourceTree = SOURCE_ROOT; }; + 64F73A262CBAD1C000D2A140 /* SoundDetectorViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = SoundDetectorViewModel.swift; path = hearo/Sources/Helper/SoundDetectorViewModel.swift; sourceTree = SOURCE_ROOT; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -208,15 +199,8 @@ 00078BD42CAFC6F200FB3F70 /* View */ = { isa = PBXGroup; children = ( - 11D7CAD12CDB8C6900F6B323 /* OnboardingNotiPermissionView.swift */, - 11D7CAD22CDB8C6900F6B323 /* OnboardingPrivacyView.swift */, - 11D7CAD32CDB8C6900F6B323 /* OnboardingStandRecommendView.swift */, - 11D7CAD42CDB8C6900F6B323 /* OnboardingWarningView.swift */, - 11D7CAD52CDB8C6900F6B323 /* OnboardingWelcomeView.swift */, 00078BE62CAFC79E00FB3F70 /* OnboardingView.swift */, - 64CB84042CDC9CAD0069A547 /* StartOnboardingView.swift */, - ); path = View; sourceTree = ""; @@ -325,10 +309,7 @@ isa = PBXGroup; children = ( 00A04EA62CB7CBB20031DECC /* SpoqaHanSansNeo_OTF_original */, - 11D7CAC22CDB8A9F00F6B323 /* FontDesignSystem.swift */, - 11D7CADD2CDBEC6100F6B323 /* LottieView.swift */, - 11D7CAC42CDB8BAF00F6B323 /* Font */, ); path = Resources; @@ -465,10 +446,7 @@ 00A04EA32CB7CA510031DECC /* Helper */ = { isa = PBXGroup; children = ( - 11D7CADD2CDBEC6100F6B323 /* LottieView.swift */, - - 1159334B2CDB2A7C005902F2 /* HornSoundClassifier_V11.mlmodel */, 64F73A242CBAC9F100D2A140 /* HornSoundDetector.swift */, 64F73A262CBAD1C000D2A140 /* SoundDetectorViewModel.swift */, @@ -663,10 +641,7 @@ 001C6F872CAFBC6C00B03767 /* Preview Assets.xcassets in Resources */, 11D7CACE2CDB8C1B00F6B323 /* Pretendard-Medium.otf in Resources */, 11D7CACF2CDB8C1B00F6B323 /* Pretendard-Regular.otf in Resources */, - 11D7CAD02CDB8C1B00F6B323 /* Pretendard-Light.otf in Resources */, - 001C6F842CAFBC6C00B03767 /* Assets.xcassets in Resources */, - 00A04EA72CB7CBB20031DECC /* SpoqaHanSansNeo_OTF_original in Resources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -728,7 +703,6 @@ 007BEFCE2CB159AD00C0E9FD /* WorkingView.swift in Sources */, 007BEFD02CB159BF00C0E9FD /* WorkingViewModel.swift in Sources */, 64F73A252CBAC9F100D2A140 /* HornSoundDetector.swift in Sources */, - 0045C6B82CC0295F009B4261 /* WarningView.swift in Sources */, 1159334C2CDB2A7C005902F2 /* HornSoundClassifier_V11.mlmodel in Sources */, 11D7CADE2CDBEC6B00F6B323 /* LottieView.swift in Sources */, @@ -924,8 +898,7 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_ASSET_PATHS = "\"hearo/Preview Content\""; - DEVELOPMENT_TEAM = J5N8Y9F8Z8; - + DEVELOPMENT_TEAM = 2H928F4Z7L; ENABLE_PREVIEWS = YES; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = hearo/Info.plist; @@ -959,8 +932,7 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_ASSET_PATHS = "\"hearo/Preview Content\""; - - DEVELOPMENT_TEAM = J5N8Y9F8Z8; + DEVELOPMENT_TEAM = 2H928F4Z7L; ENABLE_PREVIEWS = YES; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = hearo/Info.plist; @@ -1066,7 +1038,6 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_ASSET_PATHS = "\"HearoadWatch Watch App/Preview Content\""; - DEVELOPMENT_TEAM = J5N8Y9F8Z8; ENABLE_PREVIEWS = YES; GENERATE_INFOPLIST_FILE = YES; @@ -1098,7 +1069,6 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_ASSET_PATHS = "\"HearoadWatch Watch App/Preview Content\""; - DEVELOPMENT_TEAM = J5N8Y9F8Z8; ENABLE_PREVIEWS = YES; GENERATE_INFOPLIST_FILE = YES; @@ -1122,86 +1092,6 @@ }; name = Release; }; - - 001C9F7C2CCF7984004EC4D2 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - DEVELOPMENT_TEAM = 2H928F4Z7L; - GENERATE_INFOPLIST_FILE = YES; - MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = "pilgaaang.HearoadWatch-Watch-AppTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = watchos; - SWIFT_EMIT_LOC_STRINGS = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 4; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/HearoadWatch Watch App.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/HearoadWatch Watch App"; - WATCHOS_DEPLOYMENT_TARGET = 10.5; - }; - name = Debug; - }; - 001C9F7D2CCF7984004EC4D2 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - DEVELOPMENT_TEAM = 2H928F4Z7L; - GENERATE_INFOPLIST_FILE = YES; - MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = "pilgaaang.HearoadWatch-Watch-AppTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = watchos; - SWIFT_EMIT_LOC_STRINGS = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 4; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/HearoadWatch Watch App.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/HearoadWatch Watch App"; - WATCHOS_DEPLOYMENT_TARGET = 10.5; - }; - name = Release; - }; - 001C9F7E2CCF7984004EC4D2 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - DEVELOPMENT_TEAM = 2H928F4Z7L; - GENERATE_INFOPLIST_FILE = YES; - MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = "pilgaaang.HearoadWatch-Watch-AppUITests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = watchos; - SWIFT_EMIT_LOC_STRINGS = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 4; - TEST_TARGET_NAME = "HearoadWatch Watch App"; - WATCHOS_DEPLOYMENT_TARGET = 10.5; - }; - name = Debug; - }; - 001C9F7F2CCF7984004EC4D2 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - DEVELOPMENT_TEAM = 2H928F4Z7L; - GENERATE_INFOPLIST_FILE = YES; - MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = "pilgaaang.HearoadWatch-Watch-AppUITests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = watchos; - SWIFT_EMIT_LOC_STRINGS = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 4; - TEST_TARGET_NAME = "HearoadWatch Watch App"; - WATCHOS_DEPLOYMENT_TARGET = 10.5; - }; - name = Release; - }; - 112177872CC283BD000A146F /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -1209,7 +1099,6 @@ ASSETCATALOG_COMPILER_WIDGET_BACKGROUND_COLOR_NAME = WidgetBackground; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; - DEVELOPMENT_TEAM = J5N8Y9F8Z8; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = LiveActivity/Info.plist; @@ -1238,9 +1127,7 @@ ASSETCATALOG_COMPILER_WIDGET_BACKGROUND_COLOR_NAME = WidgetBackground; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; - DEVELOPMENT_TEAM = J5N8Y9F8Z8; - GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = LiveActivity/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = LiveActivity; diff --git a/hearo/hearo/Sources/Helper/LottieView.swift b/hearo/hearo/Sources/Helper/LottieView.swift index 08ce66a..a62b946 100644 --- a/hearo/hearo/Sources/Helper/LottieView.swift +++ b/hearo/hearo/Sources/Helper/LottieView.swift @@ -11,6 +11,7 @@ import Lottie struct LottieView: UIViewRepresentable { var animationName: String var animationScale: CGFloat // 애니메이션 크기 배율 + var loopMode: LottieLoopMode = .loop // loopMode 추가, 기본값을 .loop로 설정 func makeUIView(context: Context) -> UIView { let containerView = UIView(frame: .zero) @@ -18,7 +19,7 @@ struct LottieView: UIViewRepresentable { // Lottie 애니메이션 뷰 생성 let animationView = LottieAnimationView(name: animationName) animationView.contentMode = .scaleAspectFit - animationView.loopMode = .loop + animationView.loopMode = loopMode animationView.play() // 애니메이션 크기 조절 (배율 적용)