1. Android

1.1. 引入Xdua

这里告诉你如何在项目中引入 xdua.

使用 Android Studio 或者其他 Gradle 构建的项目


编辑 build.gradle 文件:

dependencies {
    // 其他依赖
    compile 'com.lovearth.xdua:xdua:1.0.0'
}

建议尽早使用 Android Studio。

1.2. 开始使用 Xdua

在使用地球号之前,你必须初始化Xdua类。你只需要调用Xdua.initialize一次即可完成初始化,在 Application 里面做这件事再适合不过了(如下面的代码),注意多次的调用初始化是无意义的。

[MyApplication.java]
public class MyApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        Xdua.initialize(this);
    }
}

做完上面的工作后,你需要在 AndroidManifest.xml 中指定你的appkey和appsecret。

<meta-data android:name="XDUA_APPKEY" android:value="你的appkey"></meta-data>
<meta-data android:name="XDUA_APPSECRET" android:value="你的appsecret"></meta-data>
用户注册

支持四种注册方式:电话,邮箱,姓名。其中电话和邮箱注册需要验证码

电话注册

字段名 字段说明 字段举例
tel 用户电话 +86-15810*011
pwd 用户密码 对明文密码进行md5后的md5码
vfcode 验证码 通过电话获取的短信验证码
Xdua.signupByTel(String tel,String pwd,String vfcode,String ugrp,String role, new XduaAsyncCallback() {
    @Override
    public void onSuccess(JsonObject result) {
        System.out.println(result);
    }
    @Override
    public void onFailure(int status,String reason,JsonObject result) {
        System.out.println(result);
    }
    @Override
    public void onError(String reason) {
        System.out.println(reason);
    }
});

邮箱注册

字段名 字段说明 字段举例
mail 用户邮箱 example@email.com
pwd 用户密码 对明文密码进行md5后的md5码
vfcode 验证码 通过电话获取的短信验证码
Xdua.signupByMail(String mail,String pwd,String vfcode,String ugrp,String role, new XduaAsyncCallback() {
    @Override
    public void onSuccess(JsonObject result) {
        System.out.println(response);
    }
    @Override
    public void onFailure(int status,String reason,JsonObject result) {
        System.out.println(response);
    }
    @Override
    public void onError(String reason) {
        System.out.println(response);
    }
});

用户名注册

字段名 字段说明 字段举例
name 用户名 examplenickname
pwd 用户密码 对明文密码进行md5后的md5码
ugrp 用户户群 注册时的初始户群
role 用户户群 注册时的初始角色
Xdua.signupByName(String name,String pwd,String ugrp,String role, new XduaAsyncCallback() {
    @Override
    public void onSuccess(JsonObject result) {
        System.out.println(response);
    }
    @Override
    public void onFailure(int status,String reason,JsonObject result) {
        System.out.println(response);
    }
    @Override
    public void onError(String reason) {
        System.out.println(response);
    }
});
获取短信验证码

通过手机号获取验证码

字段名 字段说明 字段举例
tel 用户电话 +86-15810*011
Xdua.getvfcByTel(String tel,new XduaAsyncCallback() {
    @Override
    public void onSuccess(JsonObject result) {
        System.out.println(response);
    }
    @Override
    public void onFailure(int status,String reason,JsonObject result) {
        System.out.println(response);
    }
    @Override
    public void onError(String reason) {
        System.out.println(response);
    }
});

通过邮箱获取验证码

字段名 字段说明 字段举例
mail 用户电话 example@email.com
Xdua.getvfcByMail(String mail,new XduaAsyncCallback() {
    @Override
    public void onSuccess(JsonObject result) {
        System.out.println(response);
    }
    @Override
    public void onFailure(int status,String reason,JsonObject result) {
        System.out.println(response);
    }
    @Override
    public void onError(String reason) {
        System.out.println(response);
    }
});
用户登录

支持三种登录方式:电话,邮箱,姓名。

字段名 字段说明 字段举例
tel 用户电话 +86-15810*011
mail 用户邮箱 example@email.com
name 用户姓名 nickname
pwd 用户密码 对明文密码进行md5后的md5码
ugrp 用户户群 用户登录到哪个户群
role 用户角色 用户以什么角色登录
Xdua.loginByTel(String tel,String pwd,String ugrp,String role, new XduaAsyncCallback() {
    @Override
    public void onSuccess(JsonObject result) {
        String dua_id = result.optString("dua_id");
        String token  = result.optString("token");
    }
    @Override
    public void onFailure(int status,String reason,JsonObject result) {
        System.out.println(response);
    }
    @Override
    public void onError(String reason) {
        System.out.println(response);
    }
});
字段名 字段类型 字段说明
dua_id String 登录用户会获取的新的dua_id,格式:8位数字母串
user_id String 登录用户会获取user_id,格式:8位数字母串
token String 用户登录获取的权限token
用户详情

通过用户id获取用户的属性详情

Xdua.getUser(String user_id, new XduaAsyncCallback() {
    @Override
    public void onSuccess(JsonObject result) {
        System.out.println(response);
    }
    @Override
    public void onFailure(int status,String reason,JsonObject result) {
        System.out.println(response);
    }
    @Override
    public void onError(String reason) {
        System.out.println(response);
    }
});
修改密码
字段名 字段说明 字段举例
user_id 用户id 8位数字字母大小写,通过登录接口获取
oldpass 用户的旧密码 32位md5
newpass 用户的新密码 32位md5
Xdua.chgPass(String user_id,String oldpass,String newpass, new XduaAsyncCallback() {
    @Override
    public void onSuccess(JsonObject result) {
        System.out.println(response);
    }
    @Override
    public void onFailure(int status,String reason,JsonObject result) {
        System.out.println(response);
    }
    @Override
    public void onError(String reason) {
        System.out.println(response);
    }
});
重置密码
字段名 字段说明 字段举例
user_id 用户ID 8位字母数字组合。登录成功后获取的user_id
vfcode 验证码 使用用户绑定电话获取的短信验证码
newpass 新的密码 md5编码的密码
Xdua.rstPassByTel(String user_id,String vfcode,String newpass, new XduaAsyncCallback() {
    @Override
    public void onSuccess(JsonObject result) {
        System.out.println(response);
    }
    @Override
    public void onFailure(int status,String reason,JsonObject result) {
        System.out.println(response);
    }
    @Override
    public void onError(String reason) {
        System.out.println(response);
    }
});

results matching ""

    No results matching ""