Вопрос

My register button calls my register() function through Void doInBackground. With this, my App crashes, but when using URL parameter as Static, defined in code, everything works fine.

What am I doing wrong?

static void register(final Context context, final String regId, final String appName) {
    Log.i(TAG, "registering device (regId = " + regId + ")");
    SharedPreferences SERVER_URL = context.getSharedPreferences("URL" , Context.MODE_PRIVATE);

    String serverUrl = SERVER_URL + "register.php";
    Map<String, String> params = new HashMap<String, String>();
    params.put("regId", regId);
    params.put("appName", appName); ...
}

Нет правильного решения

Другие советы

Here SERVER_URL is SharedPreferences instance from that we need to get specified value by using getString() method, try this,

static void register(final Context context, final String regId, final String appName) {
    Log.i(TAG, "registering device (regId = " + regId + ")");
    SharedPreferences SERVER_URL = context.getSharedPreferences("URL" , Context.MODE_PRIVATE);

    String serverUrl = SERVER_URL.getString("replace_your_key_value",null) + "/register.php";
    Map<String, String> params = new HashMap<String, String>();
    params.put("regId", regId);
    params.put("appName", appName); ...

Try:

 SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());

    String serverUrl = prefs.getString("URL") + /"register.php";
Log.i("Server URL " + serverUrl );

instead of in your code.

SharedPreferences SERVER_URL = context.getSharedPreferences("URL" , Context.MODE_PRIVATE);
String serverUrl = SERVER_URL + "register.php";
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top