2022. 3. 22. 15:06ㆍAndroid/개발 CASE
Firebase Dynamic Link 설정 시 Deep Link란 동적 링크에 심어줄 url로 실행시킬 앱을 찾지 못했을 때 연결하기 위한 정보이다.
ABTest Dynamic Link 설정
- Deep Link : https://www.naver.com
- 긴 Dynamic Link : (자동으로 link가 삽입됨) https://pocabtest.page.link/?link=https://www.naver.com&apn=com.example.abtest&afl=https://www.naver.com
- 짧은 Dynamic Link : (자동으로 생성됨) https://pocabteste.page.link/TG78
- AndroidManifest.xml : <intent-filter><action View><category Default><category Browsable><data android:host="pocabtest.page.link" android:scheme="https"/></intent-filter>
- apn : 링크를 여는데 필요한 Android 앱의 패키지명
- afl : 앱이 설치되지 않은 경우 열리는 링크(Play Store의 설치경로 뿐 아니라 연결할 모바일 웹, 앱 홍보 페이지 등의 url)
- amw : 앱 최소 버전(업데이트 필요한 경우 Play Store로 이동)
중요한 건 앱의 동작이 달랐다는 것인데, 이는 Signing Key가 맞지 않아 앱이 자동적으로 판별되지 않았기 때문이다.
sha-256을 Firebase 앱 Setting에 추가를 해주어야 정상적으로 Activity가 바로 뜬다.(웹 브라우저를 거쳐 앱이 실행되는 결과는 잘못된 결과이다.)
Signing Key를 Setting에 등록해도 반영되는 시간까지 꽤 걸린다.
https://pocabtest.page.link/.well-known/assetlinks.json 를 통해 Signing Key가 반영되었는지 확인할 수 있다.
[Signing Key] A4:DE:32:42:BB:91:19:15:F2:89:34:5F:DC:2D:5F:B4:B6:92:AD:D4:BA:1C:6C:BC:AB:C8:60:18:9E:C9:C3:D1
[Before]
[{"relation":["delegate_permission/common.handle_all_urls"],"target":{"namespace":"android_app","package_name":"com.example.abtest","sha256_cert_fingerprints":["EE:E8:86:27:D6:91:0F:08:7A:26:72:24:6F:7F:CE:8F:9D:11:07:65:0D:B8:F5:93:81:B8:89:E7:7B:34:D1:92",
"A4:1C:FF:07:27:A4:C6:8B:10:F0:B5:F0:C1:EB:D6:1C:DF:99:5D:CA:C7:C9:E7:79:B0:84:7A:40:0D:1A:6A:F0"]}}]
[After]
[{"relation":["delegate_permission/common.handle_all_urls"],"target":{"namespace":"android_app","package_name":"com.example.abtest","sha256_cert_fingerprints":["A4:1C:FF:07:27:A4:C6:8B:10:F0:B5:F0:C1:EB:D6:1C:DF:99:5D:CA:C7:C9:E7:79:B0:84:7A:40:0D:1A:6A:F0",
"A4:DE:32:42:BB:91:19:15:F2:89:34:5F:DC:2D:5F:B4:B6:92:AD:D4:BA:1C:6C:BC:AB:C8:60:18:9E:C9:C3:D1"]}}]
'Android > 개발 CASE' 카테고리의 다른 글
Compose Modifier 가로/세로 (0) | 2022.04.07 |
---|---|
Compose Column & Row (0) | 2022.04.07 |
Compose - rememberUpdatedState의 필요성 (0) | 2022.02.24 |
[WIP] diffUtil은 리스트 주소가 같아야 작동 (0) | 2022.01.10 |
권한(전화) 허용과 세부 권한(READ_PHONE_STATE, READ_PHONE_NUMBERS) 허용은 별개 (0) | 2022.01.10 |