Извлечение переменной из информации о классе sharedpreference для помещения в базу данных MySQL (Android Studio использует Volley) - PullRequest
0 голосов
/ 08 мая 2019

Мне нужно получить имя пользователя из моей регистрационной информации и использовать его в качестве записи базы данных для другой таблицы (для которой я создал API), но мой код только помещает в базу данных значение NULL вместо фактического значения.

Я могу отразить значение в текстовом представлении, но оно все равно сохраняется как пустое значение в моей базе данных. Я пытался использовать много вариантов кода, доступных онлайн, но они не решают мою проблему.

Класс Sharedpreference содержит следующее:

  public String getUsername(){

    SharedPreferences sharedPreferences = mCtx.getSharedPreferences(SHARED_PREF_NAME, Context.MODE_PRIVATE);
    return sharedPreferences.getString(KEY_USERNAME, null);
}

Я создал другой класс, который по сути является формой для помещения данных в базу данных. В новом классе (форме) я могу получить это, используя текстовое представление, которое отлично работает:

  textViewUsername = (TextView) findViewById(R.id.textViewUsername);
  textViewUsername.setText(SharedPrefManager.getInstance(this).getUsername());

НО в том же классе (форме) Я не могу поместить его в строковую переменную (он добавляет значение NULL в базу данных:

  final String username = SharedPrefManager.getInstance(this).getUsername();

В:

  params.put("usename", username);

` Я использую залп для обработки запросов. Я использую много других переменных, которые я извлекаю из EditText в моей форме ввода, они работают просто отлично.

Как я могу получить действительное имя пользователя, а не значение NULL?

Заранее спасибо.

1 Ответ

0 голосов
/ 09 мая 2019

Поскольку я не могу комментировать, я публикую его там.Можете ли вы добавить проверку для SharedPrefManager.getInstance (это) вернуть ноль или нет.Если он возвращает ноль, то вы должны снова назначить тот же экземпляр в своей деятельности в методе oncreate или onresume.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...