This question is locked. New answers and comments are not allowed.
i am having trouble sending push notifications to segments of users as no userid is getting attached to device registrations. i am checking device registeration after login, in the main activity. all other parameters such as hardware info, location and push token are getting set correctly, but not the user id.
private void registerDeviceTelerik() { Map<String, Object> params = new HashMap<>(); params.put("UserId", userId); params.put("PushToken", TokenGCM); params.put("HardwareId", android_id); params.put("HardwareModel", model); params.put("PlatformType", 3); params.put("PlatformVersion", release); params.put("Locale", locale); params.put("TimeZone", "Europe/London"); Log.d(TAG, params.toString()); JsonObjectRequest postRequest = new JsonObjectRequest(Request.Method.POST, TELERIK_URL, new JSONObject(params), new Response.Listener<JSONObject>() { @Override public void onResponse(JSONObject response) { try { Log.v("Response:%n %s", response.toString(4)); } catch (JSONException e) { e.printStackTrace(); } } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { if (error.getMessage() != null) { Log.e("Error: ", error.getMessage()); } } }) { @Override public Map<String, String> getHeaders() throws AuthFailureError { HashMap<String, String> headers = new HashMap<>(); headers.put("Content-Type", "application/json; charset=utf-8"); if (!SingletonClass.getInstance().getAccessToken().getToken().toString().equals(null)) { headers.put("Authorization", "bearer " + SingletonClass.getInstance().getAccessToken().getToken().toString()); } return headers; } }; ConnectionManager.getInstance(MainActivity.this).add(postRequest);}private void isDeviceRegisteredTelerik() { isRegistered = false; try { TELERIK_DEVICE_URL += URLEncoder.encode(android_id, "UTF-8"); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } JsonObjectRequest postRequest = new JsonObjectRequest(TELERIK_DEVICE_URL, new JSONObject(), new Response.Listener<JSONObject>() { @Override public void onResponse(JSONObject response) { try { Log.d("Response:%n %s", response.toString(4)); Log.d("Device registered: ", "TRUE"); isRegistered = true; } catch (JSONException e) { isRegistered = false; Log.d("Device registered: ", "FALSE"); e.printStackTrace(); registerDeviceTelerik(); } } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { if (error.getMessage() != null) { Log.e("Error: ", error.getMessage()); Log.d("Device registered: ", "FALSE"); Log.e("Device registered: ", "FALSE"); } else { registerDeviceTelerik(); } } }); ConnectionManager.getInstance(MainActivity.this).add(postRequest);}