Question

I am trying to develop the push notification with Urban Airship. I am successfully running the app, but my device is not registering in my Account. ANd I am getting these errors also in logcate.

01-24 19:20:47.480: W/GCMNotification - UALib(30560): Activity com.example.gcmnotification.MainActivity@416c6fb8 was not manually added during onStart(). Call UAirship.shared().getAnalytics().activityStarted in every activity's onStart() method.

01-24 19:21:14.400: E/GCMNotification - UALib(31088): AndroidManifest.xml missing required service: com.urbanairship.analytics.EventService

01-24 19:21:14.410: E/GCMNotification - UALib(31088): AndroidManifest.xml's com.urbanairship.push.GCMPushReceiver declaration missing required com.google.android.c2dm.intent.RECEIVE filter with category=com.example.gcmnotification

01-24 19:21:14.410: E/GCMNotification - UALib(31088): AndroidManifest.xml's com.urbanairship.push.GCMPushReceiver declaration missing required com.google.android.c2dm.intent.REGISTRATION filter with category=com.example.gcmnotification

code is here.

  public class MyApplication extends Application{

@Override
public void onCreate() {


    AirshipConfigOptions options = AirshipConfigOptions.loadDefaultOptions(this);

    options.developmentAppKey = "pahvQlDxxx";
    options.developmentAppSecret = "bOltfxxx";
      options.productionAppKey = "AIzaSyCS_QxF-AtTglLf5BWxxx";
    options.inProduction = false;
    //options.iapEnabled = false;
    UAirship.takeOff(this, options);
     PushManager.enablePush();

}

}

Was it helpful?

Solution

The LogCat tells you exactly what is missing in your AndroidManifest.xml.

Your broadcast receiver should be declared as follows :

    <receiver android:name="com.urbanairship.push.GCMPushReceiver"
        android:permission="com.google.android.c2dm.permission.SEND">
        <intent-filter>
            <action android:name="com.google.android.c2dm.intent.RECEIVE" />
             <action android:name="com.google.android.c2dm.intent.REGISTRATION" />
            <category android:name="com.example.gcmnotification" />
        </intent-filter>
    </receiver>

And you should declare com.urbanairship.analytics.EventService :

<service android:name="com.urbanairship.analytics.EventService" />
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top