10월 30, 2017
이 문서는 안드로이드 딥 링크 기술 가이드 4부 문서 중 4부입니다. 이전 포스트는 URI 스킴과 크롬 인텐트, 앱링크를 다루었습니다.
딥 링크 기술 하나는 앱이 설치되지 않은 경우의 틈새시장을 위한 것입니다. 개발자로서 구글 플레이 스토어를 통해 맞춤 매개 변수를 전달할 수 있으며 사용자가 앱을 처음 열면 앱에서 이 매개 변수가 수신됩니다. 이 기술은 이 매개 변수를 잘 다루면 사용자의 유입 경로를 알 수 있으며 설치 절차를 통해 맞춤 랜딩 페이지나 딥 링크를 만들 수 있게 해 줍니다.
안드로이드 설치 리퍼러를 수신하도록 앱을 구성하려면, 앱이 com.android.vending.INSTALL_REFERRER 브로드캐스트를 수신하도록 등록해야 합니다. 매니페스트 파일의 <application /> 태그 사이에 다음 내용을 삽입하십시오.
이 경우에, 브로드캐스트를 수신할 맞춤 클래스 명칭은 io.branch.testbed.InstallListener입니다. 이는 BroadcastReceiver의 간단한 서브클래스입니다. 이 클래스에 필요한 상용 코드는 다음과 같습니다:
일단 위에서 언급한 것처럼 BroadcastReceiver를 설정하고 나면 인텐트를 다루기는 쉽습니다! 이는 URI 스킴을처리하는 메커니즘과 매우 유사하지만 이는 onReceive 콜 내부에서 일어납니다. 사례:
이 기술을 올바르게 사용하려면 사용자와 상호 작용하는 구글 플레이 스토어 링크를 제어할 수 있어야 합니다. 앱 패키지 명칭이 io.branch.testbed라고 가정하면, 구글 플레이가 다음 두 가지로 열릴 수 있습니다:
리퍼러를 추가하려면 이 링크들에 &referrer=specialparam만 추가하면 됩니다. 이를 위해서는 링크 자체를 제어해야 합니다.
참고: 크롬 인텐트 섹션을 읽으며 알아챘을지 모르지만, 플레이 스토어 링크를 제어할 수 없는데 이는 이 방법을 활용할 수 없음을 뜻합니다.
리퍼러 매개 변수를 제어하기 위해서는 URI 메소드에 설명된 클라이언트 측 JS 내에 이를 포함하는 것을 추천합니다. 앱을 열려고 시도한 후에 실행되는 마켓 링크 대체 기능에 리퍼러가 어떻게 추가되는지 보여주는 코드 스니펫을 소개합니다.
구글 딥 링크는 믿을 수 없을 만큼 복잡하며 곳곳에 경계 조건이 널려 있습니다. Branch 툴을 사용하면 링크가 어디서나 작동한다고 확신가지실 수 있습니다.