Android разница между куки и SharedPreferences - PullRequest
2 голосов
/ 14 сентября 2011

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

Как установить cookie, которые я не получаю. или расшаренное предпочтение это хорошо?

Мой код ниже,

private boolean sendJsonToServer(String jsonStr) {
        Log.d("sendJsonToServer", "called");
        boolean isDataSend = false;
        try {
            HttpClient client = new DefaultHttpClient();

            HttpPost request = new HttpPost(url);

            List<NameValuePair> value = new ArrayList<NameValuePair>();

            value.add(new BasicNameValuePair("Name", jsonStr));

            UrlEncodedFormEntity entity = new UrlEncodedFormEntity(value);

            request.setEntity(entity);

            HttpResponse res = client.execute(request);


            HttpEntity httpEntity = res.getEntity();
            String entityStr = convertStreamToString(httpEntity.getContent());

            JSONObject resObject = new JSONObject(entityStr);
            resObject.getString("result");
            resObject.getString("token");

            Log.e("entity", "" + entityStr + "  " + resObject.getString("result")
                            + "   " + resObject.getString("token"));

            Editor edit = prefUserDetails.edit();
            edit.clear();
            edit.putString(TOKEN, resObject.getString("token"));
            edit.commit();

            String token = prefUserDetails.getString("token", "");
            Log.e("token from sharedPreference", token);

                    String[] status_String = res.getStatusLine().toString().trim()
                .split(" ");
            if (status_String[1].equals("200")) {
                isDataSend = true;
                Log.e("isSend", "ture");
            }


        } catch (Exception e) {
            System.out.println("Exp=" + e);
        }
        return isDataSend;
    }

Я отправляю jsonObject (jsonStr), который состоит из имени пользователя, пола и всех деталей, на мой сервер для регистрации. После регистрации он выполняет вход и сервер дает ответ, один - результат, а другой - токен. Я хочу сохранить этот токен в cookie.

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

Плз, дайте мне путь. спасибо

1 Ответ

0 голосов
/ 14 сентября 2011

SharedPreference - хороший вариант, когда мы говорим о cookie. Как я думаю, вы будете хранить дату, связанную с сеансом, в cookie, и эта функция хорошо поддерживается общими предпочтениями.

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