建议用户注册可以使用验证码加密码的形式注册

现在在很多的App中注册场景都能遇见如下逻辑,用户先填写一个手机号,然后接收到一个验证码,验证通过后再填写密码,然后注册,注册后手机号本身已经是验证的状态了

要实现这个场景,LeanCloud的支持并不友好

首先AVUser里面的请求SMS相关的方法都是要求用户已经注册了手机号,这就导致无法使用AVUser里面的验证码请求了

如果使用AVSMS类请求验证码,然后下面有两种情况:
1,使用手机号和验证码注册,这个时候用户无法设置密码了,只能用邮件或者验证码的形式重置密码,无法实现这种场景

2,先检验验证码,验证通过后,再创建一个AVUser对象,在这个对象设置密码,用户名,手机号后调用signUp方法注册,但是这个时候默认手机号是没有验证的,但是在实际操作中用户已经接收了验证码
再验证手机就要再发送验证码,这样体验太差,同样无法实现上述场景

所以建议SDK中添加请求注册用验证码的方法,注册时同时提供验证码
例如AVUser类中有很多请求登录用验证码的方法,如requestLoginSmsCode,可以添加requestSignUpSmsCode之类的方法,
再添加signUpOrLoginByMobilePhone(java.lang.String mobilePhoneNumber, java.lang.String smsCode,String password)方法
这个方法登录后手机默认是验证过的

我们现在是支持在使用手机 + 验证码登录的时候传入用户的其他信息的,包括用户名密码。Android SDK 暂时还没有支持,我们正在做相关的调整。