Adjust 스토어 사전 설치 툴
앱이 기기에 사전 설치된 경우에는 사전 설치 트래커를 사용하여 사용자를 어트리뷰션해야 합니다. Adjust의 스토어 & 사전 설치 툴(adjust-dtt
)은 APK에 이러한 정보를 넣을 수 있도록 해줍니다. Adjust SDK는 adjust-dtt
에 의해 삽입된 정보를 읽습니다. 이를 통해 사전 설치된 앱의 사용자를 특정 Adjust 트래커로 어트리뷰션할 수 있습니다.
시작에 앞서
시작하려면 GitHub에서 adjust-dtt
툴을 다운로드하시기 바랍니다. 툴 사용을 위해 해당 파일을 실행 파일로 만들어야 합니다. 다음의 명령어를 실행하여 파일을 실행 파일로 설정합니다.
chmod +x adjust-dtt
adjust-dtt
실행을 위해 다음이 기기에 설치되어 있어야 합니다.
ruby
–adjust-dtt
실행에 사용되는 언어 툴apktool
– APK를 언패킹 및 리패킹하기 위한 툴jarsigner
– APK 서명 툴
설치 설명서
PATH에 툴 추가
adjust-dtt
가 작동하려면 apktool
과 jarsigner
가 모두 쉘의 PATH
변수에 있어야 합니다. 다음의 명령어를 실행하여 PATH
에서 사용 가능한지 확인합니다.
# apktool의 위치 반환
which apktool
# jarsigner 위치 반환
which jarsigner
brew
, apt
, dnf
, pacman
와 같은 패키지 매니저는 툴 설치 시 이러한 툴을 PATH
에 추가합니다. 이 툴을 다른 방식으로 설치한 경우, PATH
에 수동으로 툴을 추가해야 합니다.
예: 다음의 위치에 apktool
(1)과 jarsigner
(2)를 다운로드 할 수 있습니다:
터미널에서 툴에 액세스하려면, 해당 디렉터리가 PATH
에 있어야 합니다.
PATH
에 새 디렉터리를 추가하려면 쉘 실행 명령어 파일(rc
)에서 PATH
변수를 편집해야 합니다. 이 파일은 일반적으로 홈 디렉터리에 있습니다. .{shell name}rc
와 같은 네이밍 형식을 사용합니다.
rc
파일에 새 디렉토리를 추가하여, PATH
에 새 디렉토리를 추가할 수 있습니다. 각 디렉터리 항목은 콜론(:
)으로 구분해야 합니다. 원하는 편집 프로그램에서 해당 파일을 연 뒤, 다음을 끝에 추가합니다:
파일에 디렉터리 추가가 완료되면, 저장 후 종료하시기 바랍니다. 소스들은 다음 번에 터미널을 열 때 PATH
에서 이용 가능합니다. 즉시 이용 가능하도록 하려면 다음의 명령어를 실행하시기 바랍니다.
축하합니다! 이제 adjust-dtt
툴 실행에 필요한 모든 절차가 완료되었습니다.
사전 설치 트래커 정보 추가
1단계: keystore 파일 얻기
APK를 생성하면 Android Studio가 이를 서명할 것입니다. 이는 APK의 "비서명" 버전을 생성한 경우에도 마찬가지입니다. 이 경우 Android Studio는 APK를 기본 설정된 디버그 서명 keystore 파일로 서명합니다. 이 keystore 파일은 기본 설정에 따라 ~/.android/debug.keystore
에 있습니다.
Android Studio에서 서명된 SPK를 내보내기 하는 경우, APK를 커스텀 서명 keystore 파일로 서명하게 됩니다.
adjust-dtt
를 사용하려면 디폴트 keystore 파일 또는 맞춤 keystore 파일에 액세스할 수 있어야 합니다. apktool
를 사용하여 APK를 언패킹할 때 가 모든 서명을 제거하기 때문입니다. APK 리패킹이 완료되면 서명은 재활성화 될 수 없습니다. 따라서, APK 재서명을 위해 서명 정보와 함께 jarsigner
를 실행해야 합니다. Android 기기 전달을 위해 어플리케이션은 재서명되어야 합니다.
2단계: 트래커 토큰 생성하기
다음 단계는 Adjust 대시보드에서 트래커 토큰 생성을 필요로 합니다. 이 트래커는 사전 설치 앱에 대한 기본 설정 트래커로 사용될 것입니다. 따라서, 사전 설치된 앱이 있는 모든 유저는 해당 트래커에 어트리뷰션될 것입니다.
3단계: config 파일 생성하기
keystore 파일과 트래커 토큰이 모두 준비되면 configuration 파일을 생성해야 합니다. adjust-dtt
앱은 설정을 읽기 위해 adjust-config.yaml
configuration 파일을 사용합니다. 이 파일은 설정해야 하는 모든 앱 스토어에 대한 설정을 포함합니다.
adjust-config.yaml
에서 다음의 파라미터를 설정할 수 있습니다.
다음은 adjust-config.yaml
파일의 예시입니다. 본 예시는 store_1 , store_2 , store_3 이라는 이름의 3개 스토어에 대한 설정을 포함합니다.
apk_path: /Users/username/Desktop/apk/example-release.apk
keystore_path: /Users/username/Desktop/apk/mykeystore.jks
keystore_pass: mykeystorepass
keystore_alias: mykeystorealias
stores:
store_1:
default_tracker: abc123
store_2:
default_tracker: abc456
store_3:
default_tracker: abc789
각 스토어에 동일한 설정을 사용하고자 하는 경우, 파일의 루트에 글로벌 파라미터를 정의할 수 있습니다. 스토어별로 설정된 파라미터는 해당 스토어에 대한 글로벌 파라미터보다 우선으로 취급됩니다. 그 예는 다음과 같습니다.
apk_path: /Users/username/Desktop/apk/example-release.apk
keystore_path: /Users/username/Desktop/apk/mykeystore.jks
keystore_pass: mykeystorepass
keystore_alias: mykeystorealias
stores:
store_1:
default_tracker: abc123
keystore_path: /Users/username/Desktop/apk/differentkeystore.jks
keystore_pass: differentkeystorepass
keystore_alias: differentkeystorealias
store_2:
default_tracker: abc456
store_3:
default_tracker: abc789
본 예시에서 adjust-dtt
툴은 store_1 에 대한 APK를 생성할 때 differentkeystore.jks
, differentkeystorepass
, differentkeystorealias
를 사용합니다. 이 툴은 각 스토어에 대해 수정된 APK를 생성할 것입니다.
4단계: adjust-dtt 툴 실행하기
adjust-dtt
툴은 adjust-config.yaml
파일에 대한 경로를 인수로 사용합니다. 트래커 정보를 APK에 추가하려면 툴을 다음과 같이 실행하십시오.
adjust-dtt adjust-config.yaml
adjust-dtt
툴 실행 시, 다음과 같이 작동합니다.
APK를 폴더로 언패킹합니다. 폴더는 APK와 동일한 디렉터리에 위치할 것입니다. 이름 또한 APK와 동일합니다.
assets
폴더와adjust_config.properties
파일을 검색합니다.adjust_config.properties
파일은 디폴트 트래커 정보를 포함합니다.- 존재하지 않는 경우
assets
폴더와adjust_config.properties
파일을 생성합니다. 본 툴은default_tracker
정보를adjust_config.properties
파일에 입력합니다. adjust_config.properties
파일이 있는 경우 해당 파일에default_tracker
정보를 씁니다. 파일이 이미 디폴트 트래커를 포함한 경우에는 두 값이 비교될 것입니다. 두 값이 다른 경우,adjust-config.yaml
파일의 값은 기존의 값을 덮어쓰게 됩니다.
- 존재하지 않는 경우
APK를 리패키징합니다.
adjust-config.yaml
에 명시된 정보로 APK를 서명합니다. 이는keystore_path
,keystore_pass
,keystore_alias
파라미터를 사용합니다.원본과 동일한 이름과
_[store_name]
접미사를 가진 APK 생성. 위 예시에서 툴은 3개의 APK 파일을 생성합니다. 이 메서드의 이름은example-release_store_1.apk
,example-release_store_2.apk
,example-release_store_3.apk
입니다. 툴이 파일 생성을 완료한 이후 이름을 변경할 수 있습니다.
본 툴과 관련한 문의 사항 및 문제 발생 시 support@adjust.com으로 연락주시기 바랍니다.