2020년 3월 1일부터 "android.permission.INSTALL_PACKAGES" 인텐트로 referrer 정보를 얻을 수 없게 되었습니다.
이에, 아래와 같이 코드를 수정해 주셔야 합니다.(기존코드는 삭제하셔도 됩니다)
(Module) build.gradle 파일에 아래 내용을 추가합니다.
dependencies { implementation '...' implementation 'com.android.installreferrer:installreferrer:2.1'
적절한 Activity 또는 Application 클래스에 아래의 내용을 추가합니다.
private InstallReferrerClient referrerClient; : : if (/* 앱이 최초로 실행되었다면 */) { // 넣어도 되고 넣지 않아도 되는 문장입니다. referrerClient = InstallReferrerClient.newBuilder(this).build(); referrerClient.startConnection(new InstallReferrerStateListener() { @Override public void onInstallReferrerSetupFinished(int responseCode) { switch (responseCode) { case InstallReferrerClient.InstallReferrerResponse.OK: // Connection established. ReferrerDetails response; try { response = referrerClient.getInstallReferrer(); if (response == null) return; String referrerUrl = response.getInstallReferrer(); long referrerClickTime = response.getReferrerClickTimestampSeconds(); long appInstallTime = response.getInstallBeginTimestampSeconds(); boolean instantExperienceLaunched = response.getGooglePlayInstantParam(); } catch (RemoteException e) { e.printStackTrace(); } break; case InstallReferrerClient.InstallReferrerResponse.FEATURE_NOT_SUPPORTED: // API not available on the current Play Store app. break; case InstallReferrerClient.InstallReferrerResponse.SERVICE_UNAVAILABLE: // Connection couldn't be established. break; } } @Override public void onInstallReferrerServiceDisconnected() { // Try to restart the connection on the next request to // Google Play by calling the startConnection() method. } }); } //
한동안 Referrer 정보가 수집되지 않아 일시적인 문제이겠거니 했더가 몇개월을 날려 버렸네요 >.< 이래서, 업데이트는 자주 챙겨봐야 할 것 같습니다.
건투를 빕니다!