4

我正在使用Facebook 帐户工具包来验证用户手机号码。我用过下面的代码,

final Intent intent = new Intent(MainActivity.this, AccountKitActivity.class);
    AccountKitConfiguration.AccountKitConfigurationBuilder configurationBuilder =
            new AccountKitConfiguration.AccountKitConfigurationBuilder(
                    LoginType.PHONE,
                    AccountKitActivity.ResponseType.TOKEN); // or .ResponseType.TOKEN
    // ... perform additional configuration ...
    intent.putExtra(
            AccountKitActivity.ACCOUNT_KIT_ACTIVITY_CONFIGURATION,
            configurationBuilder.build());
    startActivityForResult(intent, APP_REQUEST_CODE);

一切都很好。我想将用户手机号码传递给 AccountKit 活动。有可能让它工作吗?如何?其实我想防止使用Account Kit重复移动验证,还有其他方法吗?

4

2 回答 2

8

你可以用这个

PhoneNumber phoneNumber = new PhoneNumber("+880","16XXXXXXXX","BD"); // country code, phone number, country code 

 final Intent intent = new Intent(context, AccountKitActivity.class);
    AccountKitConfiguration.AccountKitConfigurationBuilder configurationBuilder = new AccountKitConfiguration.AccountKitConfigurationBuilder(
                    LoginType.PHONE,
                    AccountKitActivity.ResponseType.CODE);

    configurationBuilder.setReadPhoneStateEnabled(true)
            .setReceiveSMS(true);

    intent.putExtra(
            AccountKitActivity.ACCOUNT_KIT_ACTIVITY_CONFIGURATION,
            configurationBuilder
                    .setInitialPhoneNumber(phoneNumber)
                    .build());
于 2018-04-22T10:37:05.770 回答
4

所以在它说的地方

// ... perform additional configuration ...

您可以通过以下方式设置初始电话号码:

configurationBuilder.setInitialPhoneNumber(phoneNumber);

其中 phoneNumber 的类型为 com.facebook.accountkit.PhoneNumber。该类采用 3 个参数:国家代码(如“+1”)、电话号码(如“5551234567”)和 ISO 国家代码(如“US”)

您还可以在 configurationBuilder 中进行其他设置。请参阅参考:https ://developers.facebook.com/docs/reference/androidsdk/current/AccountKit/com/facebook/accountkit/ui/accountkitconfiguration.accountkitconfigurationbuilder.html/

于 2017-10-06T19:54:24.000 回答