package com.dieam.reactnativepushnotification.modules;
import android.app.IntentService;
import android.content.Intent;
import android.util.Log;
import com.google.android.gms.gcm.GoogleCloudMessaging;
import com.google.android.gms.iid.InstanceID;
import static com.dieam.reactnativepushnotification.modules.RNPushNotification.LOG_TAG;
public class RNPushNotificationRegistrationService extends IntentService {
private static final String TAG = "RNPushNotification";
public RNPushNotificationRegistrationService() {
super(TAG);
}
@Override
protected void onHandleIntent(Intent intent) {
try {
String SenderID = intent.getStringExtra("senderID");
InstanceID instanceID = InstanceID.getInstance(this);
String token = instanceID.getToken(SenderID,
GoogleCloudMessaging.INSTANCE_ID_SCOPE, null);
sendRegistrationToken(token);
} catch (Exception e) {
Log.e(LOG_TAG, TAG + " failed to process intent " + intent, e);
}
}
private void sendRegistrationToken(String token) {
Intent intent = new Intent(this.getPackageName() + ".RNPushNotificationRegisteredToken");
intent.putExtra("token", token);
sendBroadcast(intent);
}
}