2012-05-14 4 views
0

나는 방송 INSTALL_REFERRER을 수신하는 BroadcastReceiver가있는 앱을 만들었습니다.BroadcastReceiver가 INSTALL_REFERRER 방송을 수신하지 않음

내가 이클립스로 앱을 설치하고 adb로 브로드 캐스트를 만들 때 LogCat이 제대로 작동하는 것을 볼 수있다. 하지만 내가 playcat에서 앱을 설치할 때 logcat에 아무것도 표시되지 않습니다. 제대로 이해하면 플레이 스토어 앱이 설치되어있는 앱을 브로드 캐스트 마녀로 만들어야합니다. 맞습니까? basicly 어떤 메신저를하고

그게 전부는 :

public class SDK_Referrer extends BroadcastReceiver 
{ 
    public void onReceive(Context context, Intent intent) 
    { 
     if (intent.getAction().equals("com.android.vending.INSTALL_REFERRER")) 
     { 
      String referrer = intent.getStringExtra("referrer"); 
      if (!(referrer == null || referrer.length() == 0)) 
      { 
       // extracting the relevant data to Map 
       Log.d("SAMPLE", "Generating Ymid from referrel"); 
       Map<String, String> referralmap = 
        createHashMapFromQueryString(referrer); 
       Log.d("SAMPLE", "Ymid is: " + referralmap.get("ymid")); 
      } 
     } 
    } 
} 

난 단지 응용 프로그램이 설치 될 때 서버에가 someting를 보내려고합니다. 감사합니다.

답변

1

리시버를 매니페스트에 추가해야 앱이 브로드 캐스트를 청취 할만한 앱을 알 수 있습니다. 다음과 같은 내용 :

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