2014-06-16 7 views
0

나는 사용자가 플레이 스토어에서 앱을 설치하고 실행할 때 포인트를받는 안드로이드 앱을 개발 중입니다. 이제 사용자가 파인트를 얻고 싶다면 플레이 스토어에서 앱을 설치해야합니다 ... 앱 스토어에서 앱을 설치하는 중 앱의 상태 (설치/다운로드)가 무엇입니까안드로이드 앱을 설치하는 방법을 알고 싶습니다.

내 Android 앱에 있습니다. 앱의 상태를 알 수 있습니다. 즉 앱이 설치 또는 다운로드 중입니다.

NotifyListenerservice ... 해당 서비스에만 해당되는지 확인하지 못했습니다.

이 방법을 알려주십시오.

덕분에, 잘리

+0

당신은 더 자세히 설명 할 수 있습니다 무엇을 " 앱 상태 "및"앱 설치 또는 다운로드 중 "이라는 의미입니다. – CommonsWare

+0

응용 프로그램의 상태가 휴대 전화의 현재 상태 (다운로드, 설치, 제거, 실행 중, 종료 됨 등)와 관련이 있다면 여러 가지 문제를 겪게 될 것입니다. 응용 프로그램이 무언가를 다운로드하거나 응용 프로그램에서 무언가를 설치하는 과정에 있는지를 알고 싶다면 다른 이야기입니다. – zgc7009

+0

업데이트 된 질문 ... – Anjali

답변

0

는 설치 또는 제거, 또는 당신이 원하는대로되어 있는지 확인하기 위해 브로드 캐스트 리시버를 사용합니다.

<receiver 
     android:name=".receiver.PackageChangeReceiver" 
     android:enabled="true"> 
     <intent-filter android:priority="99999998"> 
      <action android:name="android.intent.action.PACKAGE_ADDED"/> 
      <action android:name="android.intent.action.PACKAGE_CHANGED"/> 
      <action android:name="android.intent.action.PACKAGE_FULLY_REMOVED"/> 
      <action android:name="android.intent.action.PACKAGE_REMOVED"/> 
      <data android:scheme="package" /> 
     </intent-filter> 

    </receiver> 

여기 예를 들어 Intent PACKAGE_ADDED not registering

또한 응용 프로그램이 시작되었는지를 확인하기 위해 AccessibilityService을 사용할 수를 찾을 수 있습니다,하지만 당신이 사용이 남용 야해.

0

아니요 당신은 확인할 수 없습니다. 귀하의 앱이 설치되어 있거나 다운로드 중임을 인식하지 못합니다.

브로드 캐스트 수신기는 응용 프로그램을 수동으로 시작한 후에 만 ​​초기화됩니다. 그 전에 방송 수신기는 실제로 듣지 않습니다. 응용 프로그램이 중지 된 상태입니다. 앱에 수동 시작이 필요합니다. ..

0

@Anjali 당신이 묻는 문제를 전환 추적이라고합니다. 이 용어에 대한 자세한 내용은 Google에서 확인할 수 있습니다.

응용 프로그램이 장치에 설치되면 OS는 응용 프로그램에 브로드 캐스트를 보내 응용 프로그램에서들을 수 있습니다. 코드 아래에서 보라 :

@Override 
    public void onReceive(Context context, Intent intent) { 
     try { 
      if (intent.getAction().equals("com.android.vending.INSTALL_REFERRER")) { 
       Bundle extras = intent.getExtras(); 
       String referrerString = extras.getString("referrer"); 
       //ReferrerString variable contain your data which was passed to your application. Now you can do whatever you want to like communicating with server etc. 
      } 
     } catch (Exception e) { 

     } 

    } 

을 일반적으로, 당신은 당신이 ReferrerString에서 이러한 매개 변수를 얻을 것이다 응용 프로그램을 설치 URL에 몇 가지 고유 한 매개 변수를 전달하는 경우. 귀하의 Play 스토어 링크는 아래와 같이 보일 것입니다 :

http://play.google.com/store/apps/details?id=packagename& 참조 페이지를 = yourdata

당신은 그것을 위해 매니페스트 항목 아래에 필요

:

<receiver android:name="packagename.BoradcastReciverImplmentedClass" android:exported="true" > 
<intent-filter> 
<action android:name="com.android.vending.INSTALL_REFERRER" /> 
</intent-filter> 
</receiver> 
관련 문제