플레이스토어 referrer 데이터 넘기기

참고

랜딩 페이지 제작 시 referrer 데이터 전송

  • 검색 하면 항상 나오는 형태로 아래와 같이 사용이 가능 하다.

market://details?id=com.패키지.이름&referrer=xxxx

  • 위와 같이사용하기 위해서는 웹에서 앱의 설치 유무를 판단 하여 앱실행 또는 마켓이동으로 분기를 처리해야한다. 분기 처리가 완벽하면 문제가 없겠지만 타임아웃을 이용해서 처리하는게 일반적이어서 문제가 발생 한다.
  • 차라리 아래와 같은 일반 적인 형태에서 처리가 가능하면 어떨까 해서 찾아 보았습니다.(전달 데이터는 URL인코딩 사용 추천)

Intent://호스트?데이터A=AAAAAAAA&데이터B=BBBBBBB#Intent;scheme=스키마;action=android.intent.action.VIEW;category=android.intent.category.BROWSABLE;package=com.패키지.이름;end

intent:// 스토어 이동시 리퍼러(referrer) 및 extra 데이터 전달

  • S.market_referrer= 를 추가하면 플레이스토어어 리퍼러에 데이터 전달 가능
  • 아래 처럼 넣으면 InstallReferrerClient 에서 데이터를 확인 가능 합니다.

Intent://호스트?데이터A=AAAAAAAA&데이터B=BBBBBBB#Intent;scheme=스키마;action=android.intent.action.VIEW;category=android.intent.category.BROWSABLE;package=com.패키지.이름;S.market_referrer=데이터A=AAAAAAAA&데이터B=BBBBBBB;end

  • 참고

intent 로 데이터를 보내는 형태가 미리 정의 되어 있다.

  • 타입
  • S.market_referrer 이면 스트링 타입의 market_referrer 이다.

``` String => ‘S’ Boolean =>’B’ Byte => ‘b’ Character => ‘c’ Double => ‘d’ Float => ‘f’ Integer => ‘i’ Long => ‘l’ Short => ‘s’

```

  • 웹에서 앱을 시작 할때 쿼리문 말고 아래 처러 보내서 데이터를 확인 가능 합니다.

``` // 웹 Do Whatever

// 앱 intent.extras?.let { val name = it.getString(“name”) val age = it.getInt(“age”) }

```

PyeongHo

즐겁게 또 즐겁게