Digitsでは、iOS とAndroid上で電話番号のみでアカウントの作成やアプリの署名ができます。 Digits 機能はTwitter で使われているグローバルで信頼性のあるインフラストラクチャと同じものを使って作られており、 ユーザーの電話番号をシンプルでカスタマイズ可能なインタフェースを使って確認します。 あなたのアプリへの導入も簡単です。
Digits extends your existing user/profile database. Digits機能を使ったアカウントの作成が成功すると、ユーザー記録に関連した不変のユーザーIDと端末用のoAuth トークンが戻り値として返ります。便宜上、確認済みの電話番号も戻り値として返されますが、ユーザーの電話番号はいつ変更されるか分からないので認証に使うべきではありません。
我々はDigits機能を拡張し、ユーザーがアドレス帳を使って友達を探す機能同様に、ウェブログインのサポートも追加していく予定です。
リリースノート:
Digits: Sign in with Phone NumberDigits lets people create an account or sign into your app using nothing but their phone number on iOS and Android. Built using the same global, reliable infrastructure Twitter uses, Digits will verify the user’s phone number with a simple customizable user interface that easily integrates into your app. Digits extends your existing user/profile database. A successful Digits account creation will return a stable userID to attach or match with your user record, and an oAuth token for the device. A verified phone number is also returned for convenience, but the user’s number may change at any time and should not be used for authentication. We plan to extend Digits to include web login support, as well as the ability for users to find their friends via their address books. Release notes:
|
注意
Twitter キットを使って初期化する場合、このセクションは飛ばして構いません。
プロジェクトのビルドスクリプトを更新し、必要なdependencies とrepositoryをインクルードしてください:
dependencies { compile('com.digits.sdk.android:digits:1.3.0@aar') { transitive = true; } }
次に、アプリケーションのonCreate()
メソッド内で、Fabric.with()
の実行にあわせてDigits とその依存関係にあるTwitter を初期化してください。
Twitter コンストラクタにはアプリで使用する TwitterAuthConfig
を渡してください。
// DemoApplication.java import io.fabric.sdk.android.Fabric; import com.twitter.sdk.android.core.TwitterCore; import com.twitter.sdk.android.core.TwitterAuthConfig; import com.digits.sdk.android.Digits; ... @Override public void onCreate() { super.onCreate(); TwitterAuthConfig authConfig = new TwitterAuthConfig(TWITTER_KEY, TWITTER_SECRET); Fabric.with(this, new TwitterCore(authConfig), new Digits()); }
Set up Kit
Update your project’s build script to include necessary dependencies and repository: dependencies { compile('com.digits.sdk.android:digits:1.3.0@aar') { transitive = true; } } Next, initialize Digits and its dependency Twitter as a part of // DemoApplication.java import io.fabric.sdk.android.Fabric; import com.twitter.sdk.android.core.TwitterCore; import com.twitter.sdk.android.core.TwitterAuthConfig; import com.digits.sdk.android.Digits; ... @Override public void onCreate() { super.onCreate(); TwitterAuthConfig authConfig = new TwitterAuthConfig(TWITTER_KEY, TWITTER_SECRET); Fabric.with(this, new TwitterCore(authConfig), new Digits()); } |
アプリでDigits機能 で使う認証トークンを取得する最初の手順は、ボタンの追加です。 レイアウト内で、以下のコードでDigits ボタンを追加します:
<com.digits.sdk.android.DigitsAuthButton android:id="@+id/auth_button" android:layout_width="wrap_content" android:layout_height="wrap_content" />
こうすうことでボタンは以下のように描写されます:
Set up DigitsAuthButtonThe first step in obtaining a Digits authentication token in your app is to add a button. Inside your layout, add a Digits button with the following code: <com.digits.sdk.android.DigitsAuthButton android:id="@+id/auth_button" android:layout_width="wrap_content" android:layout_height="wrap_content" /> This will render a button that looks like: |
ボタンを表示するActivity やFragment では、AuthCallback を作成してボタンに設定する必要があります。
// MainActivity.java import com.digits.sdk.android.AuthCallback; import com.digits.sdk.android.DigitsAuthButton; import com.digits.sdk.android.DigitsException; import com.digits.sdk.android.DigitsSession; ... DigitsAuthButton digitsButton = (DigitsAuthButton) findViewById(R.id.auth_button); digitsButton.setCallback(new AuthCallback() { @Override public void success(DigitsSession session, String phoneNumber) { // Do something with the session } @Override public void failure(DigitsException exception) { // Do something on failure } });
Configure the button in an ActivityIn the Activity or Fragment that displays the button, you need to create and attach an AuthCallback to the button. // MainActivity.java import com.digits.sdk.android.AuthCallback; import com.digits.sdk.android.DigitsAuthButton; import com.digits.sdk.android.DigitsException; import com.digits.sdk.android.DigitsSession; ... DigitsAuthButton digitsButton = (DigitsAuthButton) findViewById(R.id.auth_button); digitsButton.setCallback(new AuthCallback() { @Override public void success(DigitsSession session, String phoneNumber) { // Do something with the session } @Override public void failure(DigitsException exception) { // Do something on failure } }); |
これは必要に応じて使われる機能です。AndroidManifest.xmlファイルに以下のアクセス権を追加することで、Digits機能 が 電話番号をprefill できるようになり、ログイン処理がより簡単になります。
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
Prefill the user’s phone numberThis is an optional feature. Adding the permission below, in the AndroidManifest.xml, allows Digits to prefill the phone number therefore making the login process easier. <uses-permission android:name="android.permission.READ_PHONE_STATE"/> |
これは必要に応じて使われる機能です。AndroidManifest.xmlファイルに以下のアクセス権を追加することで、Digits機能が SMSピンを読み取れるようになり、ログイン処理がより簡単になります。
<uses-permission android:name="android.permission.RECEIVE_SMS"/>
Automate reading the SMS pinThis is an optional feature. Adding the permission below, in the AndroidManifest.xml, allows Digits to read the SMS pin therefore making the login process easier.
<uses-permission android:name="android.permission.RECEIVE_SMS"/> |