구글플레이 유입경로 기록하기

앱을 운영하면서 꼭 챙겨야할 지표중에 하나가 유입경로 분석입니다.


어느 마케팅 채널을 통해서 유저들이 유입되었는지 분석하는것은 매우 의미가 있는 행동입니다.



이러한 유입경로 분석을 해주는 안드로이드 마케팅 툴들이 요즘 참 많습니다.


요즘 나오는 sdk들은 referrer를 예측을 통해서 정확도도 높이기도하구요.



개인적으로도 이러한 마케팅 툴들을 사용하는것이 좀 더 효율적인것 같습니다.


유입경로 데이터를 차트, 그래프같은 시각적 도구까지 동원해서 자세하게 알려주기까지 하니깐요


이런것까지 개발하려면 여러 자원을 투입해야하는것은 물론인데


엄청 큰 회사가 아니고서야 여기에 쓸 자원을 앱의 퀄리티를 높이거나 다른쪽에 쏟는게 더 낫다고 생각하거든요.




혹시나 다른 sdk 적용없이 직접 유입경로를 받고자 하시는분들이라면



먼저 android manifest 파일에 receiver를 설정합니다.


intent-filter에 


com.android.vending.INSTALL_REFERRER


이것을 설정해야하는것이 필수입니다.



        <receiver

            android:name=".CampaignTrackingReceiver"

            android:exported="true">

            <intent-filter>

                <action android:name="com.android.vending.INSTALL_REFERRER" />

            </intent-filter>

        </receiver>




그리고 CampaignTrackingReceiver 클래스를 생성해봅니다.


클래스명은 아무거나 해도 상관없고 단지 BroadcastReceiver 를 상속받아 onReceive를 구현하면 됩니다.






public class CampaignTrackingReceiver extends BroadcastReceiver {


    private static String referrer = "";

    

    @Override

    public void onReceive(Context context, Intent intent) {

        Bundle extras = intent.getExtras();

        if (extras != null) {

            referrer = extras.getString("referrer");

        }

        

        Log.i("TEST", "referrer is : " + referrer);

        

    }


}



코드에서는 referrer 라는 querystring을 가져오도록 되어있습니다.



https://play.google.com/store/apps/details?id=com.example.app

&referrer=utm_source%3Dgoogle

%26utm_medium%3Dcpc

%26utm_term%3Dpodcast%252Bapps

%26utm_content%3DdisplayAd1

%26utm_campaign%3Dpodcast%252Bgeneralkeywords



이런식의 url에서 referrer 값을 읽는거죠



구글플레이의 앱을 설치할수 있는 화면이 저 파라메터를 달고 열렸고,


그 상태에서 설치버튼을 눌러 인스톨을 했다면, 앱이 설치된 후에 당시의 파라메터가 그대로 전달이 됩니다.


referrer 값에는 구글 url 빌더를 통해서 값을 만들어 넣을수 있습니다.


이러한 형태로 값을 넣는 경우 google analytics를 통해서 통계를 확인하실수 있습니다.



Parameter Description Example(s)
utm_campaign Campaign name; used for keyword analysis to identify a specific product promotion or strategic campaign utm_campaign=spring_sale
utm_source Campaign source; used to identify a search engine, newsletter, or other source utm_source=google
utm_medium Campaign medium; used to identify a medium such as email or cost-per-click (cpc) utm_medium=cpc
utm_term Campaign term; used with paid search to supply the keywords for ads utm_term=running+shoes
utm_content Campaign content; used for A/B testing and content-targeted ads to differentiate ads or links that point to the same URL utm_content=logolink
utm_content=textlink
gclid AdWords autotagging parameter; used to measure Google AdWords ads. This value is generated dynamically and should never be modified.



URL 빌더


https://developers.google.com/analytics/devguides/collection/android/v4/campaigns#google-play-url-builder




테스트는 어떻게 할수 있냐고요?


테스트하려는 앱을 이미 설치한 상태에서 강제로 해당 이벤트를 발생시켜서 가능합니다.



adb를 이용하면 됩니다.


<sdk>/platform-tools/ 디렉토리있습니다.



adb shell am broadcast -a com.android.vending.INSTALL_REFERRER --es referrer "utm_source%3Dgoogle%26utm_medium%3Dcpc%26anid%3Dadmob"



샘플 리퍼러값을 넣어서 실행을 하면(모든 앱에 com.android.vending.INSTALL_REFERRER 를 broadcast 합니다)


성공시


Broadcasting: Intent { act=com.android.vending.INSTALL_REFERRER (has extras) }

Broadcast completed: result=0


이러한 결과값이 나오는데요



여러분이 만든었던 리시버 클래스의 onReceive 메소드가 실행되었을거예요.

| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | ··· | 83 |