上一篇Android SDK接入之Facebook 登录SDK
讲到了android Facebook 登录SDK的接入,这次我们接着讲讲 Facebook中的一个分支SDK,短信验证SDK AccountKit的登录问题,由于其步骤和上一篇差不多,我们这里就不过多说具体步骤了直接上代码:
同理要用我们自己的按钮实现短信登录,这个是点击事件的方法:
/**
* accountKit登录
*/
private void onLogin() {
final Intent intent = new Intent(this, AccountKitActivity.class);
AccountKitConfiguration.AccountKitConfigurationBuilder configurationBuilder =
new AccountKitConfiguration.AccountKitConfigurationBuilder(
LoginType.PHONE,
AccountKitActivity.ResponseType.TOKEN);
configurationBuilder.setTheme(R.style.AppLoginTheme_Bicycle1);
intent.putExtra(
AccountKitActivity.ACCOUNT_KIT_ACTIVITY_CONFIGURATION,
configurationBuilder.build());
startActivityForResult(intent, APP_REQUEST_CODE);
}
因为AccountKit分为短信验证和邮箱验证,我们这里用的是短信验证,可以看到我们的LoginType是PHONE,也可改为邮箱Email;后面的一个参数也是可选的,token代表的是返回的验证方式是一串token字符串,如果改为code的话,返回的就是一串数字。
点击按钮后会弹出AccountKit自己的界面,然后输入手机号,验证码登录完成后返回,返回信息可以在AccountKit界面关闭后我们自己的Activity中的onResume方法中获取:
@Override
protected void onResume() {
super.onResume();
AccountKit.getCurrentAccount(new AccountKitCallback<Account>() {
@Override
public void onSuccess(final Account account) {
accountKitToken = AccountKit.getCurrentAccessToken().getToken();
accountKitId = account.getId();
accountKitPhone = account.getPhoneNumber() + "";
}
@Override
public void onError(final AccountKitError error) {
Log.e(TAG, "accountKitError" + error.getUserFacingMessage()+"---"+error.toString()+"---"+error.describeContents()+"---"+error.getDetailErrorCode()+"---"+error.getErrorType());
}
});
}
核心代码就是这些了,其他的可以参考官方文档中的内容。