심볼 파일 업로드¶
심볼 파일 업로드¶
플러그인으로 심볼 파일 패키징¶
ft-plugin 버전은 1.3.0 이상이어야 최신 심볼 파일 패키징 규칙을 지원하며, productFlavor를 통한 여러 버전 구분 관리도 지원합니다. generateSourceMapOnly = true를 사용하여 먼저 심볼 압축 파일을 생성한 후, 공용 DataWay를 통해 업로드하는 것을 권장합니다.
FTExt {
// ...
autoUploadMap = true
autoUploadNativeDebugSymbol = true
env = 'common'
// nativeLibPath='/build/intermediates/merged_native_libs/release/out/lib'
generateSourceMapOnly = true
prodFlavors {
prodTest {
autoUploadMap = true
autoUploadNativeDebugSymbol = true
env = "gray"
generateSourceMapOnly = true
}
prodPublish {
autoUploadMap = true
autoUploadNativeDebugSymbol = true
env = "prod"
generateSourceMapOnly = true
}
}
}
심볼 파일 관련 매개변수는 모두 선택 사항이므로 필요에 따라 활성화할 수 있습니다. 프로젝트에 여러 productFlavor가 포함된 경우 prodFlavors에서 각각 구성하는 것을 권장합니다. 내부 구성은 외부의 동일한 이름의 매개변수를 덮어씁니다.
| 매개변수명 | 타입 | 기본값 | 설명 | 사용 사례 |
|---|---|---|---|---|
| autoUploadMap | Boolean | false |
mapping.txt 자동 패키징 여부 |
R8 / Proguard 난독화를 사용하고 Java / Kotlin 스택 트레이스 복원이 필요할 때 활성화합니다. |
| autoUploadNativeDebugSymbol | Boolean | false |
Native 심볼 파일 자동 패키징 여부 | ft-native를 사용하거나 C/C++ 크래시 분석이 필요할 때 활성화합니다. |
| env | String | 빈 값 | 심볼 파일이 속한 환경 | prod, gray 등 릴리스 환경을 구분해야 할 때 구성합니다. |
| nativeLibPath | String | 자동 식별 | Native so 파일 디렉터리로, 각 ABI 디렉터리의 상위 경로를 지정해야 합니다. | 기본 경로 식별이 실패하거나 so 출력 디렉터리가 변경된 경우 구성합니다. |
| generateSourceMapOnly | Boolean | false |
심볼 압축 파일만 생성하고 자동 업로드하지 않음. 압축 파일 경로 예시: /app/build/tmp/ft{flavor}SourceMapMerge-release.zip. ft-plugin 1.3.4 이상에서 지원합니다. |
활성화한 후 공용 DataWay를 통해 업로드하는 것을 권장합니다. |
| prodFlavors | Closure | 빈 값 | 각 productFlavor에 대해 업로드 매개변수를 별도로 구성합니다. |
여러 채널 및 환경에서 각각 다른 심볼 파일을 업로드해야 할 때 사용합니다. |
nativeLibPath는 ABI 디렉터리의 상위 경로만 지정하면 됩니다. 예:.../merged_native_libs/release/out/lib
수동 또는 스크립트 업로드¶
plugin에서 generateSourceMapOnly = true를 활성화하고 gradle task assembleRelease를 실행하여 생성하거나, 직접 zip 파일로 패키징한 후 공용 DataWay를 통해 SourceMap을 업로드할 수 있습니다. zip 명령줄을 사용하여 패키징하는 것을 권장합니다. 이렇게 하면 시스템 숨김 파일이 zip 패키지에 포함되는 것을 방지할 수 있습니다.
자세한 내용은 다음을 참조하세요.
Unity Native Symbol 파일은 공식 문서를 참조하세요.