android + PHP 简单实现登录

先上效果:

http://soyoyo.esy.es/login2.gif

android + PHP 简单实现登录

说明:

1,使用 安卓手机,或者模拟器
2,服务器支持php
3,简单验证登录操作
4,网络请求使用RxEasyHttp开源库,是对okhttp3,retrofit的封装,直接使用okhttp3也是可以的
5,测试登录使用的url一直有效
6,需要服务器的,可以跟我合用,随便打发几块软妹币都行,不限流量,不限空间。

服务器端php文件

<?php
    //post方式,loginName,loginPwd相当于是key
    $name = $_POST['loginName'];
    $pwd = $_POST['loginPwd'];
    if($name!="hello"){
        die ("用户名错误!");
    }
    
    if($pwd !="wode"){
        die ("密码错误!");
    }
    
    echo "登录成功!";
    
?>

安卓端XML布局文件

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="4dp"
    tools:context=".MainActivity">


    <EditText
        android:id="@+id/etName"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginEnd="8dp"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="8dp"
        android:hint="请输入用户名"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <EditText
        android:id="@+id/etPwd"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginEnd="8dp"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="8dp"
        android:hint="请输入密码"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/etName" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginEnd="8dp"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="20dp"
        android:onClick="doLogin"
        android:text="登录"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/etPwd" />



</android.support.constraint.ConstraintLayout>

安卓端java代码实现

public class MainActivity extends AppCompatActivity {

    String loginUrl = "http://soyoyo.esy.es/login.php";

    EditText etName;
    EditText etPwd;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        etName  = findViewById(R.id.etName);
        etPwd = findViewById(R.id.etPwd);

    }

    // 点击button后执行
    public void doLogin(View view){
        login(etName.getText().toString(),etPwd.getText().toString());
    }

    private void login(String name,String pwd){
        EasyHttp.post(loginUrl)
                .baseUrl(url)
                .params("loginName",name)
                .params("loginPwd", pwd)
                .execute(new CallBack<String>() {

                    @Override
                    public void onStart() {
                        System.out.println("------onStart------");
                    }

                    @Override
                    public void onCompleted() {
                        System.out.println("------onCompleted------");
                    }

                    @Override
                    public void onError(ApiException e) {
                        e.printStackTrace();
                    }

                    @Override
                    public void onSuccess(String s) {
                        System.out.println("------onSuccess------" + s);
                        Toast.makeText(MainActivity.this,s,Toast.LENGTH_SHORT).show();
                    }
                });
    }

}

相关推荐