Regular Motion

개발자가 상팔자

[Android] App Indexing Introduction.

App Indexing은 짧게 요약하면 Google Search의 검색 결과에 어플리케이션의 컨텐츠를 노출시키는 방법이다.

어플리케이션에서 App Indexing을 구성하는 방법은 아래 4단계를 거치면 된다.

 

1. App Indexing을 Project의 dependencies에 추가한다. (시작은 쉽다)

 

2.  Google Search의 검색 결과에서 앱이 바로 실행되기 위해서는 intent-filter가 필요하다. (너와 나의 연결고리 말이다.)

검색 결과에서 바로 실행 될 Activity에 Deep Linking을 위한 intent-filter를 추가한다.

아래 intent-filter는 http://radioinn.com/podcast로 시작하는 broadcast를 처리하겠다는 의미다.

 

3. 연결고리까지 만들었으니, 이제 어플리케이션이 어떤 컨텐츠를 갖고 있는지 증명해야한다.

어플리케이션에서 Google Search의 검색 결과에 추가하고 싶은 컨텐츠를 아래와 같이 추가한다.

Title의 경우 Google Search의 자동 완성에 표시될 이름이고,

ContentId의 경우 Google Search의 겸색 결과에서 앱을 실행시에 dataString에 포함될 값이다.

* 실행된 Activity에서는 ContentId를 통해 원하는 컨테츠를 보여줄 수 있어야 한다.

 

3번까지 정상적으로 성공했으면, Google앱의 Search에서 Title에 포함된 내용을 검색했을 때 아래와 같이 나와야 한다.

아래 이미지에서는 ‘윤종신 허지웅의 어수선한 영화이야기’가 App Indexing을 통해 Google Search에 포함된 경우다.

우오오!!!! 이렇게 간단하다니!!!!

2015-06-02 09.59.55

 

4. 이제 Google Search에서 검색 결과를 클릭했을 때의 처리만 남아있다.

이미 2번에서 Google Search의 검색 결과에서 클릭했을 때 실행을 위한 intent-filter는 추가했었다.

intent-filter가 정상적으로 추가되어 있다면, Google Search에서 검색 결과를 클릭했을 때,

앱이 실행중이면 onNewIntent(), 앱이 실행중이 아니면 onCreate()로 intent를 넘겨준다.

이제 넘겨받은 intent에서 ContentId를 파싱해서 컨테츠를 보여주면 된다.

끝. (이제 앱이 히트를 칠 일만 남았다)

 

* 참고자료

https://developers.google.com/app-indexing/introduction

– http://io2015codelabs.appspot.com/codelabs/app-indexing#1

1 Comment

  1. 완전 감사합니다 ㅎㅎ 이렇게 명쾌한 글을 이제야 보네요 ㅎㅎ 감사합니다!
    근데 최근에 AppIndex와 관련한 library와 방식이 조금 바뀌었어요

    firebase기반으로 업데이트 하는 것도 다른 분들이 보시기에 좋을 것 같습니다!

답글 남기기

© 2017 Regular Motion

Theme by Anders NorenUp ↑