Android登录功能实现
16lz
2021-01-26
APP中必备功能登录的实现代码:
效果图:
请求成功后返回的数据:
{ "description": "登录成功", "flag": "success", "id": "457"}
1、登录布局activity_main:
<?xml version="1.0" encoding="utf-8"?>
2、MainActivity.java部分代码:
代码中需要使用到okhttp架包,这里我就不展示怎么添加了(博文如何添加架包:http://blog.csdn.net/qq_26650589/article/details/73159658)
public class MainActivity extends AppCompatActivity { //用户名,密码 private EditText photo, pwd; private Button btn; public String result,is; private String photostring,pwdstring; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); photo = (EditText) findViewById(R.id.photo); pwd = (EditText) findViewById(R.id.pwd); btn = (Button) findViewById(R.id.btn_log); btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //获取文本框中的内容 photostring = photo.getText().toString().trim(); pwdstring = pwd.getText().toString().trim(); Okhttp(photostring, pwdstring); } }); } public void Okhttp(final String pthot, final String pwd) { new Thread(new Runnable() {//开启线程 @Override public void run() { FormBody body =new FormBody.Builder() .add("phone",pthot) //提交参数电话和密码 .add("pwd",pwd) .build(); Request request = new Request.Builder() .url("http://192.168.1.6/Login/login") //请求的地址 .post(body) .build(); OkHttpClient client=new OkHttpClient(); try { Response response = client.newCall(request).execute(); result = response.body().string(); //获得值 JX(result); //解析 } catch (IOException e) { e.printStackTrace(); } } }).start(); } private void JX(String date){ try { JSONObject jsonObject=new JSONObject(date); String flag = jsonObject.getString("flag");//获取返回值flag的内容 if (flag.equals("success")){ is = jsonObject.getString("description"); }else{ is = jsonObject.getString("description"); } Message message = new Message(); message.what = 1; handler.sendMessage(message); } catch (JSONException e) { e.printStackTrace(); } } private Handler handler=new Handler(){ @Override public void handleMessage(Message msg) { switch (msg.what) { case 1: Toast.makeText(MainActivity.this, is,Toast.LENGTH_LONG).show(); break; } } };}
还有不要忘记添加网络权限:
更多相关文章
- Android(安卓)WebView保存Cookie登录
- MTK6735 Android之Camera驱动移植篇
- 【安卓】选项卡之顶部选项卡(简易)
- Android(安卓)博客园客户端 (七)登录功能
- Android高德地图添加点连点画线
- 如何在eclipse中添加android ADT
- Android中的 Thread + Handler 线程简单应用范例
- Android判断两次输入密码是否相等并且不为空
- Android入门第五篇之TableLayout (二)//生成10行,8列的表格