مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

oak

عضویت از 1394/06/03

اضافه کردن SharedPreferences به لگین

  • یکشنبه 16 مهر 1396
  • 22:49
تشکر میکنم

سلام یه سوال به کدوم بخش این کد SharedPreferences اضافه کنم؟

طراح فروشگاه اندروید, [08.10.17 12:08]
package ir.pasina.pasina;

import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

import org.json.JSONException;
import org.json.JSONObject;

import java.util.HashMap;

import ir.pasina.pasina.utils.CallbackDialog;
import ir.pasina.pasina.utils.DialogUtils;
import ir.pasina.pasina.utils.Shared;
import uk.co.chrisjenx.calligraphy.CalligraphyContextWrapper;

public class LoginActivity extends AppCompatActivity {
    String strusername;
    String strpassword;
    String userid;
    String name;
    String familyname;
    String invitecode;
    String onvan;
    String message;
    String soaltitle;
    String item1;
    String item2;
    String item3;
    String item4;
    String tr;
    String soalid = "NULL";
    ProgressDialog alertDialog2;

    @Override
    public void onBackPressed() {
        finish();
    }

    @Override
    protected void attachBaseContext(Context newBase) {
        super.attachBaseContext(CalligraphyContextWrapper.wrap(newBase));
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_login);
        Shared.init(LoginActivity.this);
        onvan = Shared.read("onvan", null);
        message = Shared.read("message", null);
        if (onvan.equals("null")) {
            Log.i("f", "f");
        } else {
            AlertDialog.Builder builder = new AlertDialog.Builder(LoginActivity.this);
            builder.setTitle(onvan);
            Shared.write("onvan", "null");
            builder.setMessage(message);
            builder.setPositiveButton("تست", new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int id) {
                    dialog.dismiss();

                }
            });
            AlertDialog alert = builder.create();
            alert.show();
        }

        final EditText edtusername = (EditText) findViewById(R.id.edtusername);
        final EditText edtpassword = (EditText) findViewById(R.id.edtpassword);
        Button loginbtn = (Button) findViewById(R.id.loginbtn);
        Button registerbtn = (Button) findViewById(R.id.registerbtn);
        final TextView txtforgetpass = (TextView) findViewById(R.id.txtforgetpass);

        txtforgetpass.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Uri uri = Uri.parse("http://test/");
                Intent intent = new Intent(Intent.ACTION_VIEW, uri);
                startActivity(intent);
            }
        });

        registerbtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Uri uri = Uri.parse("http://test/");
                Intent intent = new Intent(Intent.ACTION_VIEW, uri);
                startActivity(intent);
            }
        });

        loginbtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                AlertDialog.Builder builder1 = new AlertDialog.Builder(LoginActivity.this);
                builder1.setMessage("تست");
                builder1.setCancelable(true);
                AlertDialog alert11 = builder1.create();
                alert11.show();

                strusername = edtusername.getText().toString().trim();
                strpassword = edtpassword.getText().toString().trim();


Request req = new Request();
                String url = "GetLogin.php";
                HashMap<String, String> meMap = new HashMap<String, String😠);
                meMap.put("SECRET", "UIOH#(@HER(*@#H#*123$N(!*@4432984#^C$*(^!@#($&!@#&");
                meMap.put("Login", "1");
                meMap.put("Username", strusername);
                meMap.put("Password", strpassword);
                String result = req.performPostCall(url, meMap);
                try {

                    JSONObject json = new JSONObject(result);
                    if (json.has("Code")) {
                        if (json.getString("Code").equals("200")) {
                            if (json.has("Qid")) {
                                soaltitle = json.getString("onvan");
                                item1 = json.getString("g1");
                                item2 = json.getString("g2");
                                item3 = json.getString("g3");
                                item4 = json.getString("g4");
                                tr = json.getString("tr");
                                soalid = json.getString("Qid");
                                Shared.init(LoginActivity.this);
                                Shared.write("soaltitle", soaltitle);
                                Shared.write("item1", item1);
                                Shared.write("item2", item2);
                                Shared.write("item3", item3);
                                Shared.write("item4", item4);
                                Shared.write("tr", tr);
                                Shared.write("soalid", soalid);
                            } else {
                                Shared.write("soalid", "null");
                            }

                            userid = json.getString("userid");
                            name = json.getString("name");
                            familyname = json.getString("fname");

                            Shared.init(LoginActivity.this);
                            Shared.write("userid", userid);
                            Shared.write("name", name);
                            Shared.write("familyname", familyname);
                            Intent intent = new Intent(LoginActivity.this, MainActivity.class);
                            startActivity(intent);
                            finish();

                        } else {
                            alert11.dismiss();
                            Dialog dialog = new DialogUtils(LoginActivity.this).buildDialogWarning(R.string.tavajoh, R.string.loginwrong, R.string.TRY_AGAIN, R.string.CLOSE, R.drawable.img_no_connect, new CallbackDialog() {
                                @Override
                                public void onPositiveClick(Dialog dialog) {
                                    dialog.dismiss();
                                }

                                @Override
                                public void onNegativeClick(Dialog dialog) {
                                    finish();
                                }
                            });
                            dialog.show();
                        }
                    }
                } catch (JSONException e) {
                    alert11.dismiss();
                    e.printStackTrace();
                }
            }
        });


    }
}

پاسخ های این پرسش

تعداد پاسخ ها : 6 پاسخ
کاربر سایت

نرجس اسماعیلی

عضویت از 1393/01/20

  • دوشنبه 17 مهر 1396
  • 09:06

سلام shared و برای چی می خواهید بعد از یکی از این رویداد هایی که نوشتید بزارید؟

مشکل در چی هست؟

کاربر سایت

oak

عضویت از 1394/06/03

  • دوشنبه 17 مهر 1396
  • 14:09

برای لاگین یعنی یبار لاگین بشه کاربر بار دوم لاگین نخواد از کاربر...دیگه لاگین نمایش داده نشه برای کاربر فقط بار اول...

فکر کنم این قسمت نباید نمایش داده بشه یعنی بخش لاگین..

loginbtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
 
                AlertDialog.Builder builder1 = new AlertDialog.Builder(LoginActivity.this);
                builder1.setMessage("تست");
                builder1.setCancelable(true);
                AlertDialog alert11 = builder1.create();
                alert11.show();
 
                strusername = edtusername.getText().toString().trim();
                strpassword = edtpassword.getText().toString().trim();
 
 
Request req = new Request();
                String url = "GetLogin.php";
                HashMap<String, String> meMap = new HashMap<String, String😠);
                meMap.put("SECRET", "UIOH#(@HER(*@#H#*123$N(!*@4432984#^C$*(^!@#($&!@#&");
                meMap.put("Login", "1");
                meMap.put("Username", strusername);
                meMap.put("Password", strpassword);
                String result = req.performPostCall(url, meMap);
                try {
 
                    JSONObject json = new JSONObject(result);
                    if (json.has("Code")) {
                        if (json.getString("Code").equals("200")) {
                            if (json.has("Qid")) {
                                soaltitle = json.getString("onvan");
                                item1 = json.getString("g1");
                                item2 = json.getString("g2");
                                item3 = json.getString("g3");
                                item4 = json.getString("g4");
                                tr = json.getString("tr");
                                soalid = json.getString("Qid");
                                Shared.init(LoginActivity.this);
                                Shared.write("soaltitle", soaltitle);
                                Shared.write("item1", item1);
                                Shared.write("item2", item2);
                                Shared.write("item3", item3);
                                Shared.write("item4", item4);
                                Shared.write("tr", tr);
                                Shared.write("soalid", soalid);
                            } else {
                                Shared.write("soalid", "null");
                            }
 
                            userid = json.getString("userid");
                            name = json.getString("name");
                            familyname = json.getString("fname");
 
                            Shared.init(LoginActivity.this);
                            Shared.write("userid", userid);
                            Shared.write("name", name);
                            Shared.write("familyname", familyname);
                            Intent intent = new Intent(LoginActivity.this, MainActivity.class);
                            startActivity(intent);
                            finish();
 
                        } else {
                            alert11.dismiss();
                            Dialog dialog = new DialogUtils(LoginActivity.this).buildDialogWarning(R.string.tavajoh, R.string.loginwrong, R.string.TRY_AGAIN, R.string.CLOSE, R.drawable.img_no_connect, new CallbackDialog() {
                                @Override
                                public void onPositiveClick(Dialog dialog) {
                                    dialog.dismiss();
                                }
 
                                @Override
                                public void onNegativeClick(Dialog dialog) {
                                    finish();
                                }
                            });
                            dialog.show();
                        }
                    }
                } catch (JSONException e) {
                    alert11.dismiss();
                    e.printStackTrace();
                }
            }
        });

کاربر سایت

oak

عضویت از 1394/06/03

  • دوشنبه 17 مهر 1396
  • 14:11

چجوری shared..اضافه کنم به همین رویداد..

فقط کارب یبار لاگین بشه بار بعدی لاگین نشه..خودکار بره صفحه اصلی

کاربر سایت

نرجس اسماعیلی

عضویت از 1393/01/20

  • دوشنبه 17 مهر 1396
  • 15:21

shared و بعد از oncreate بزارید شما کدتون بزارید به ارور خودتون دوباره بفرمایید

کاربر سایت

oak

عضویت از 1394/06/03

  • سه شنبه 18 مهر 1396
  • 11:49

ممنون میشم اگه شما بزاریدش..من اصلا نمیفهمم

کاربر سایت

نرجس اسماعیلی

عضویت از 1393/01/20

  • چهارشنبه 19 مهر 1396
  • 15:05

باید قبل از oncreate بزارید لطفا شما انجام بدید ارور داشتید کمکتون می کنم

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)