Android 개발을 처음 사용합니다. 위에 언급 된 라이브러리를 만드는 최선의 방법이 무엇인가에 대한 몇 가지 질문이 최적으로 작용했습니다.Android 비동기 HTTP 클라이언트 (loopj) 및 영구 쿠키 저장소
현재 내 앱에는 세 가지 활동이 있습니다. MainActivity, LoginActivity 및 HomeActivity입니다. 앱이 로그인되어 있는지 확인하는 MainActivity를 시작합니다. 로그인 한 사용자는 집으로 리디렉션하고 그렇지 않으면 로그인으로 리디렉션합니다.
documentation에서 언급했듯이 RestClient 클래스를 만들었습니다. LoginActivity에서 성공적으로 요청을하고 응답을받을 수 있습니다. 이것은 내 로그인 코드입니다.
public void login() {
RequestParams params = new RequestParams();
params.put(AUTH_PARAMETER_EMAIL, mEmail);
params.put(AUTH_PARAMETER_PASSWORD, mPassword);
RestClient.setCookieStore(new PersistentCookieStore(this));
RestClient.post(AUTH_URL, params, new JsonHttpResponseHandler() {
@Override
public void onFinish() {
showProgress(false);
}
@Override
public void onSuccess(JSONObject response) {
String response_status = null;
try {
response_status = response.getString(AUTH_RESPONSE_STATUS);
} catch (JSONException e) {
Toast.makeText(LoginActivity.this,
"ERROR: " + e.toString(), Toast.LENGTH_LONG).show();
Log.e(TAG, e.toString());
}
if (response_status.equals(AUTH_SUCCESS_STATUS)) {
finish();
} else {
mPasswordView
.setError(getString(R.string.error_incorrect_password));
mPasswordView.requestFocus();
}
}
@Override
public void onFailure(Throwable e, String content) {
Toast.makeText(LoginActivity.this, "ERROR: " + e.toString(),
Toast.LENGTH_LONG).show();
Log.e(TAG, e.toString());
}
});
}
질문
- 이 새로운 쿠키의 저장을 요청이 가 될 때마다를 만들 것입니다. 한 번만 만들어 지도록 어디서 붙여야합니까? MainActivity의 onCreate에 넣은 다음 전역 변수에 할당 하시겠습니까? 그게 최선의 관행입니까?
- 내 MainActivity에서 서버에서 보낸 인 세션 쿠키를 어떻게 확인할 수 있습니까? 공유 환경 설정에 있다는 것을 알고 있지만, 어떻게하면 을 얻을 수 있습니까? 설명서는 어떤 변수가 SharedPreferences에 저장되는지 이 될 것이라고 말하지 않습니다.
- 누군가를 로그 아웃해야 할 경우 공유 환경 설정을 삭제하거나 쿠키 저장소를 지우거나 둘 다 지우시겠습니까? 자동으로 동기화됩니까?
- 앱이 다시 시작되면 sharedpreferences의 저장된 데이터에서 쿠키 저장소를 초기화하는 방법은 무엇입니까?
- 제대로 구현 한 오픈 소스 코드를 알고 있다면 기꺼이 그것을보고이 질문에 답해보십시오. 그냥 링크를 제공하십시오!
나는 여기서 나의 이해 수준이 정말로 낮다는 것을 알기 때문에 나와 벗겨주세요. :)
이봐, 당신은 여기에 언급 매우 흥미로운 일. 로그 아웃을 위해'.clear'를 어디에 두어야합니까? – Phil