0
사용자 데이터 용 프로필 섹션이있는 응용 프로그램을 만들고 있습니다. 대학, 대학, 지회 등과 같은 데이터를 업데이트 할 수있는 곳. 사용자가 응용 프로그램에 로그인하고 해당 공유 환경 설정 데이터에서 사용자의 모든 정보가 제공되면 공유 환경 설정에서이 데이터를 저장했습니다. 즉시 환경 설정 데이터를 변경하고 전체 앱으로 설정하는 방법. 잘 나는 일을 끝내는 데 도움이 필요한 분야를 개발하는 데있어 새로운 사람입니다. 여기 응용 프로그램에서 사용자 데이터를 즉시 업데이트하는 방법은 무엇입니까?
}는 당신이SharedPreferences.OnSharedPreferenceChangeListener spChanged = new
SharedPreferences.OnSharedPreferenceChangeListener() {
@Override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
String key) {
// your stuff here
}
을 수행 할 수 있습니다이를 위해 사용자 데이터 활동
public void edit_user_data(){
final String str_new_name = _edit_prof_name_.getText().toString().trim();
linearLayout.setVisibility(View.VISIBLE);
ObjectAnimator flip = ObjectAnimator.ofFloat(imgSpoon, "rotationY", 0f, 180f);
flip.setDuration(800);
flip.setRepeatCount(Animation.INFINITE);
flip.start();
StringRequest strReq = new StringRequest(Request.Method.POST,
URLconstant.USER_UPDATE, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Log.d(TAG, response.toString());
linearLayout.setVisibility(View.INVISIBLE);
try {
JSONObject data = new JSONObject(response);
JSONObject updatedata = data.optJSONObject("data");
int intError = updatedata.getInt("status");
boolean error = (intError > 0) ? true : false;
if(intError == 1){
String msg = updatedata.optString("msg");
Toast.makeText(ActivityUserEditProfile.this, msg, Toast.LENGTH_SHORT).show();
JSONArray data_array = new JSONArray("data");
for (int i = 0;i<=data_array.length();i++){
JSONObject data_obj = data_array.getJSONObject(i);
/* UserProfileData userdata = new UserProfileData();
userdata.setFullname(data_obj.getString("fullname"));
userdata.setUniverId(data_obj.getString("univer_id"));
userdata.setMuniversity(data_obj.getString("university"));
userdata.setCollegeid(data_obj.getString("collegeid"));
userdata.setMcollege(data_obj.getString("college"));
userdata.setBranchid(data_obj.getString("branchid"));
userdata.setMbranch(data_obj.getString("branch"));
userdata.setSemid(data_obj.getString("semid"));
userdata.setMsemester(data_obj.getString("semester"));
userdata.setUserImage(data_obj.getString("user_image"));
userdata.setUserId(data_obj.getString("user_id"));
userdata.setPassword(data_obj.getString("password"));
updated_info(data_obj);
SharedPreferences preferences = getApplicationContext().getSharedPreferences(SHARED_PRE_LOGIN_REGISTRATION, Context.MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
*//* preferences.edit().remove(FULL_NAME);
preferences.edit().remove(UNIVER_ID);
preferences.edit().remove(BRANCH_ID);
preferences.edit().remove(COLLEGE_ID);
preferences.edit().remove(SEM_ID);*//*
editor.clear();
editor.commit();
PreferenceHelper preferenceHelper = new PreferenceHelper();
preferenceHelper.getInstance(context).setBranchid(userdata.getBranchid());
preferenceHelper.getInstance(context).setCollegeid(userdata.getCollegeid());
preferenceHelper.getInstance(context).setEnrollno(userdata.getEnrollno());
preferenceHelper.getInstance(context).setFullname(userdata.getFullname());
preferenceHelper.getInstance(context).setMobile(userdata.getMobile());
preferenceHelper.getInstance(context).setSemid(userdata.getSemid());
preferenceHelper.getInstance(context).setUniverId(userdata.getUniverId());
preferenceHelper.getInstance(context).setUserId(userdata.getUserId());
preferenceHelper.getInstance(context).setUserImage(userdata.getUserImage());
preferenceHelper.getInstance(context).setMuniversity(userdata.getMuniversity());
preferenceHelper.getInstance(context).setMcollege(userdata.getMcollege());
preferenceHelper.getInstance(context).setMbranch(userdata.getMbranch());
preferenceHelper.getInstance(context).setMsemester(userdata.getMsemester());
preferenceHelper.getInstance(context).setPassword(userdata.getPassword());*/
}
}else{
String msg = updatedata.optString("msg");
Toast.makeText(ActivityUserEditProfile.this, msg, Toast.LENGTH_SHORT).show();
}
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
VolleyLog.d(TAG, "Error: " + error.getMessage());
Toast.makeText(getApplicationContext(), "error", Toast.LENGTH_SHORT).show();
// pDialog.hide();
linearLayout.setVisibility(View.INVISIBLE);
}
}){
//adding parameters to the request
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> params = new HashMap<>();
params.put("fullname",str_new_name);
params.put("univer_id",u_id);
params.put("collegeid",c_id);
params.put("branchid",b_id);
params.put("semid",s_id);
params.put("mobile",PreferenceHelper.getInstance(getApplicationContext()).getMobile());
return params;
}
};
MySingleton.getInstance(this).addToRequestQueue(strReq);
}
더 명확하게, 유 된 SharedPreferences 또는 솜 다른 영구 저장소를 사용합니까? 무엇이 필요합니까 –
예, 공유 환경 설정을 사용하여 데이터를 저장하고 있습니다. 필자가 원하는 것은 Flipkart, paytm, watsapp와 같은 응용 프로그램에서 사용자 프로필을 업데이트하는 방법입니다. 데이터가 즉시 업데이트되어 다른 응용 프로그램을 업데이트하는 것과 같이 내 응용 프로그램에서 데이터를 업데이트 할 수있는 방법을 알고 싶습니다 – Deepak
@Deepak, 내 이해에 따라 전체 응용 프로그램 데이터를 업데이트하여 즉시 반영하도록 할 수 있습니다. https://developer.android.com/guide/topics/ui/settings.html#Listening 링크를 따르십시오. –