У меня есть одна проблема. У меня есть приложение, в котором вы можете голосовать за кого-то, кого вы любите. Вы можете голосовать только один раз в день. Я сохраняю этот день, когда пользователь голосует с SharedPreferences, поэтому пользователь не может проголосовать еще раз за этот день. Все работает нормально. Я создаю другое действие, и из этого мероприятия я знаю выбор пользователя. Это означает, что я знаю, для кого пользователь хочет голосовать. Мой вопрос: как я могу получить sharedpreferences пользователя (день, когда пользователь проголосовал в прошлый раз), записать его в SharedPreferences (что Vote Activity будет знать, что я выбираю кого-то), и мне нужно скопировать один и тот же код из голосования. Активность во вторую активность или Я могу использовать свою Голосовую активность из какого-то кода? Мой код с сохранением Предпочтения и звонки JSON:Позвоните JSON из другого вида деятельности
private void savePreferences(String key, int value) {
SharedPreferences sharedPreferences = PreferenceManager
.getDefaultSharedPreferences(this);
Editor editor = sharedPreferences.edit();
editor.putInt(key, value);
editor.commit();
}
class AttemptLogin extends AsyncTask<String, String, String> {
@Override
protected void onPostExecute(String file_url) {
// TODO Auto-generated method stub
super.onPostExecute(file_url);
pDialog.dismiss();
}
@Override
protected String doInBackground(String... args) {
// TODO Auto-generated method stub
String pos = pos1.toString();
Log.i("12", pos);
int success;
try {
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("pos", pos));
Log.d("request!", pos);
JSONObject json = jsonParser.makeHttpRequest(VOTE_URL, "POST",
params);
success = json.getInt(TAG_SUCCESS);
if (success == 1) {
Log.d("Successful!", json.toString());
Intent i = new Intent(Vote.this, MainActivity.class);
finish();
startActivity(i);
} else {
Log.d("Failure!", json.toString());
}
} catch (JSONException e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPreExecute() {
// TODO Auto-generated method stub
super.onPreExecute();
pDialog = new ProgressDialog(Balsuok.this);
pDialog.setMessage("Voting...");
pDialog.setIndeterminate(false);
pDialog.setCancelable(true);
pDialog.show();
}
}
Я думаю, что вы забыли сохранить результат JSON в sharedpreferences –
мне не нужно, чтобы сохранить JSon результат. Мне просто нужно сэкономить день, когда пользователь последний раз проголосовал – linkas