설치 가이드
이 문서는 Host 애플리케이션에 Test Solution SDK를 통합하는 방법을 안내합니다. SDK는 현재 압축 파일(.zip) 형태로 제공됩니다.
📥 사전 준비
시작하기 전, 아래 항목들이 준비되었는지 확인해주세요.
- Test Solution SDK 파일: 담당자로부터 전달받은
MSCTSSDK.zip파일을 준비합니다. - 네이티브 프로젝트: SDK를 연동할 Android 또는 iOS 프로젝트가 필요합니다.
- 기본 지식: 각 플랫폼(Android/iOS)의 프로젝트 구조 및 빌드 시스템에 대한 기본적인 이해가 필요합니다.
⚙️ 공통 단계: SDK 압축 해제
전달받은 MSCTSSDK.zip 파일의 압축을 해제합니다. 압축을 풀면 다음과 같은 플랫폼별 SDK 파일이 포함되어 있습니다.
repo/: Android 라이브러리 파일 모음MSCTSSDK/$(CONFIGURATION)/: iOS 실행 타겟별 프레임워크 파일 모음
이제 각 플랫폼에 맞는 파일을 프로젝트에 추가해야 합니다.
🤖 Android 연동 가이드 (Android Studio)
Android 프로젝트에 repo/ 디렉터리를 추가하고 빌드 설정을 변경합니다.
1. repo 디렉터리 추가
- Android Studio에서 프로젝트 뷰를 Project로 변경합니다.
app모듈 내에libs라는 이름의 디렉터리를 생성합니다. (이미 있다면 생략)- 압축 해제한
repo/디렉터리를app/libs디렉터리로 이동합니다.
2. settings.gradle (Module: app) 설정
app 모듈의 settings.gradle 파일을 열고 아래와 같이 dependencyResolutionManagement 블록에 코드를 추가하여 라이브러리를 프로젝트에 포함시킵니다.
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS)
repositories {
google()
mavenCentral()
maven("https://storage.googleapis.com/download.flutter.io")
maven("app/libs/repo")
}
}
3. build.gradle (Module: app) 설정
app 모듈의 build.gradle 파일을 열고 아래와 같이 dependencies 블록에 코드를 추가하여 Flutter module 을 종속성으로 포함시킵니다.
// ...
android {
buildTypes {
release {
...
}
debug {
...
}
create("profile") {
initWith(getByName("debug"))
}
}
// ...
}
dependencies {
// ...
debugImplementation("com.mscbrain.sdk.test_solution.test_solution_sdk:flutter_debug:1.0")
releaseImplementation("com.mscbrain.sdk.test_solution.test_solution_sdk:flutter_release:1.0")
add(
"profileImplementation",
"com.mscbrain.sdk.test_solution.test_solution_sdk:flutter_profile:1.0"
)
// ...
}
4. Gradle 동기화
설정 변경 후, Android Studio 상단에 나타나는 "Sync Now" 배너를 클릭하여 프로젝트를 동기화합니다. 빌드가 오류 없이 완료되면 SDK 연동이 성공적으로 완료된 것입니다.
🍏 iOS 연동 가이드 (Xcode)
iOS 프로젝트 루트 디렉터리에 MSCTSSDK/ 디렉터리를 추가하고 빌드 설정을 변경합니다.
1. 모든 Framework 연결하기
- Xcode에서 프로젝트 네비게이터를 엽니다.
Build Phases탭으로 이동합니다.Link Binary With Libraries섹션을 확장합니다.+버튼을 클릭하여Add Other...를 선택한 후Add Files...를 선택합니다.Choose frameworks and libraries to add:대화 상자에서MSCTSSDK/Release/디렉터리로 이동합니다.- 해당 디렉터리에서 프레임워크들(
*.xcframework)을 모두 선택한 다음Open을 클릭합니다 .
2. 빌드 모드를 고려하여 라이브러리 경로 업데이트
- Finder 를 실행합니다.
- 프로젝트 디렉터리로 이동합니다.
[MY_APP].xcodeproj를 마우스 오른쪽 버튼을 클릭하고 패키지 내용 보기를 선택합니다.- Xcode에서
project.pbxproj파일을 엽니다. 파일은 Xcode의 텍스트 편집기에서 열립니다. 이렇게 하면 텍스트 편집기를 닫을 때까지 Project Navigator 가 잠깁니다. - 다음 텍스트와 같은 줄을 찾습니다.
/* Begin PBXFileReference section */
312885572C1A441C009F74FF /* Flutter.xcframework */ = {
isa = PBXFileReference;
expectedSignature = "AppleDeveloperProgram:S8QB4VV633:FLUTTER.IO LLC";
lastKnownFileType = wrapper.xcframework;
name = Flutter.xcframework;
path = MSCTSSDK/Release/Flutter.xcframework;
sourceTree = "<group>";
};
312885582C1A441C009F74FF /* App.xcframework */ = {
isa = PBXFileReference;
lastKnownFileType = wrapper.xcframework;
name = App.xcframework;
path = MSCTSSDK/Release/App.xcframework;
sourceTree = "<group>";
};
...
Release텍스트를$(CONFIGURATION)으로 변경하고, 경로를 큰따옴표로 묶습니다.
312885572C1A441C009F74FF /* Flutter.xcframework */ = {
isa = PBXFileReference;
expectedSignature = "AppleDeveloperProgram:S8QB4VV633:FLUTTER.IO LLC";
lastKnownFileType = wrapper.xcframework;
name = Flutter.xcframework;
path = "MSCTSSDK/$(CONFIGURATION)/Flutter.xcframework";
sourceTree = "<group>";
};
312885582C1A441C009F74FF /* App.xcframework */ = {
isa = PBXFileReference;
lastKnownFileType = wrapper.xcframework;
name = App.xcframework;
path = "MSCTSSDK/$(CONFIGURATION)/App.xcframework";
sourceTree = "<group>";
};
...
$(CONFIGURATION)은 Xcode의 빌드 모드를 나타냅니다. Debug 모드일 때는 Debug로, Release 모드일 때는 Release로 변경됩니다.
/* Begin PBXFileReference section */와 /* End PBXFileReference section */ 사이의 모든 프레임워크를 변경(path, Release 가 위와 같은 경우)해야 합니다.
3. 검색 경로 업데이트
Build Settings탭으로 이동합니다.Search Paths를 찾습니다.Framework Search Paths의 우측을 더블 클릭 합니다.- 콤보 상자에서
+버튼을 클릭합니다. $(inherited)를 입력하고Enter키를 누릅니다.+버튼을 클릭합니다.$(PROJECT_DIR)/MSCTSSDK/$(CONFIGURATION)/를 입력하고Enter키를 누릅니다.
4. Framework 포함 설정 (Embed & Sign)
- 프로젝트 네비게이터에서 프로젝트 파일을 선택한 후, TARGETS 목록에서 앱 타겟을 선택합니다.
- General 탭으로 이동합니다.
- "Frameworks, Libraries, and Embedded Content" 섹션으로 스크롤하여 이동합니다.
- 각 프레임워크들을 선택하고 Embed 설정을 Embed & Sign으로 변경합니다. 이때
FlutterPluginRegistrant.xcframework은 Do Not Embed로 설정합니다.
FlutterPluginRegistrant.xcframework 은 Static framework 이므로 Embed & Sign로 설정되어서는 안됩니다.
5. 빌드 확인
프로젝트를 빌드(Product > Build 또는 단축키 Cmd+B)하여 오류가 발생하는지 확인합니다. 빌드가 성공적으로 완료되면 SDK 연동이 완료된 것입니다.
✅ 다음 단계
이제 SDK 설치가 완료되었습니다. 다음 단계인 빠른 시작 문서로 이동하여 최소한의 코드로 SDK를 실행하는 방법을 알아보세요.