序:以前一直想找到一个搭建app后台的框架,尝试过springboot,以及基于springboot的Guns(Guns官方的教程价格鄙视了我~)。直到回到最初的Django,之前很早使用过一点,还是觉得Django是真正的方便。


完成android登录后台
①创建项目以及app
②基本设置,登录注册逻辑及反馈
③开启服务进行测试

①创建项目以及app




②基本设置,登录注册逻辑及反馈








 public void sendRequest() {        new Thread(new Runnable() {            @Override            public void run() {                HttpURLConnection connection = null;                BufferedReader reader = null;                try {                    URL url = new URL(urlLoginOrSign);                    connection = (HttpURLConnection) url.openConnection();                    connection.setRequestMethod("POST");                    connection.setConnectTimeout(8000);                    connection.setReadTimeout(8000);                    DataOutputStream out = new DataOutputStream(connection.getOutputStream());                    String user_id = id.getText().toString();                    String user_password = password.getText().toString();                    out.writeBytes("username="+user_id+"&password="+user_password);                    InputStream in = connection.getInputStream();                    reader = new BufferedReader(new InputStreamReader(in));                    StringBuilder response = new StringBuilder();                    String line;                    while ((line = reader.readLine()) != null) response.append(line);                    Log.d(TAG, response.toString());                                        //!!!这是一个极大的错误:在线程里处理不能更新UI,Toast也是不能的                    //Toast.makeText(LoginActivity.this,response.toString(),Toast.LENGTH_SHORT).show();                    //如果登录成功,并且已经点击了“记住密码”,则会保存该密码                    SharedPreferences.Editor editor = getSharedPreferences("data",MODE_PRIVATE).edit();                    if (response.toString().equals("登录成功") ){                        //关闭等待登录窗口                        progressDialog.dismiss();                        Message msg = new Message();                        msg.what = 0;                        handle.sendMessage(msg);                        if (rememberPass.isChecked())                        {                            String ac = id.getText().toString();                            String pa = password.getText().toString();                            editor.putBoolean("Remember_password", true);                            editor.putString("Account", ac);                            editor.putString("Password", pa);                        }                        else                        {                            editor.clear();                        }                        editor.apply();                    }else if(response.toString().equals("登录失败") ){                        //关闭等待登录窗口                        progressDialog.dismiss();                        Message msg = new Message();                        msg.what = 1;                        handle.sendMessage(msg);                        if (rememberPass.isChecked())                        {                            String ac = id.getText().toString();                            String pa = password.getText().toString();                            editor.putBoolean("Remember_password", true);                            editor.putString("Account", ac);                            editor.putString("Password", pa);                        }                        else                        {                            editor.clear();                        }                        editor.apply();                    }else if(response.toString().equals("用户不存在") ){                        //关闭等待登录窗口                        progressDialog.dismiss();                        Message msg = new Message();                        msg.what = 2;                        handle.sendMessage(msg);                        if (rememberPass.isChecked())                        {                            String ac = id.getText().toString();                            String pa = password.getText().toString();                            editor.putBoolean("Remember_password", true);                            editor.putString("Account", ac);                            editor.putString("Password", pa);                        }                        else                        {                            editor.clear();                        }                        editor.apply();                    }                } catch (MalformedURLException e) {                    Log.e(TAG, "url form wrong");                } catch (IOException e) {                    Log.e(TAG, "IOException 1:" + e.getMessage());                } finally {                    if (reader != null) {                        try { reader.close(); }                        catch (IOException e) { Log.e(TAG, "IOException 2:" +e.getMessage()); }                    }                    if (connection != null) {                        connection.disconnect();                    }                }            }        }).start();    }    private Handler handle = new Handler() {        public void handleMessage(Message msg) {            switch (msg.what) {                case 0:                    Toast.makeText(LoginActivity.this,"登录成功!",Toast.LENGTH_SHORT).show();                    LoginActivity.this.finish();                    break;                case 1:                   Toast.makeText(LoginActivity.this,"密码错误!",Toast.LENGTH_SHORT).show();                   break;                case 2:                    Toast.makeText(LoginActivity.this,"用户不存在!",Toast.LENGTH_SHORT).show();                    break;            }        }    };


③开启服务进行测试


可以在浏览器上进行测试:




更多相关文章

  1. Android(安卓)Studio 4.0 New Class 窗口自定义修改
  2. Android(安卓)实现简单的登陆注册功能(SharedPreferences和SQLite
  3. 我对Android(安卓)Activity的生命周期是这样理解的
  4. android APP自动增量更新
  5. eclipse的graphical layout窗口工作不正常或者消失了
  6. 转 Android(安卓)SDK Manager国内无法更新的解决方案(亲测有效)
  7. WPF UI组件学习(一) - Window的外观实现及常用属性
  8. Android使用JobService实现后台服务
  9. Unity 导出 Gradle 工程及问题 (Please select a keystore and a

随机推荐

  1. Android(安卓)java和javascript之间的相
  2. Android访问网络(可以正常使用)
  3. android实现计算器功能
  4. androidU盘检测
  5. android获取图片尺寸的两种方法以及bitma
  6. ionic android app 签名处理
  7. Android(安卓)打电话,发短信,调用系统浏览
  8. android中的getResource以及获取额外的资
  9. My Android(安卓)Camera Notes
  10. Android(安卓)浏览器打开APP中的Activity