[英]Twitter Digits : how to check if the user is already registered
我正在通过Twitter试验Digits API,以便在我的Android应用程序上注册用户。 目前在我的启动活动中,我显示了一个按钮( com.digits.sdk.android.DigitsAuthButton
),要求用户输入他们的电话号码,以便发送确认码。 一旦他们输入确认码并进行身份验证,我就会在回调方法中收到user_id
。
现在,下次如果我点击启动活动中的相同按钮,它不会显示输入电话号码的选项,只返回已经注册的相同user_id
。
我想在我的Java代码中复制同样的东西,而无需额外点击com.digits.sdk.android.DigitsAuthButton
按钮。 我查看了一些示例,他们使用以下语句来验证相同的内容:
if (Digits.getSessionManager().getActiveSession() != null) { ... }
这是否足够或者我应该使用sharedPreference来存储返回的user_id
和电话号码吗?
更新
我个人使用sharedpreference
它对我来说很好..
至于处理“稍后更改电话号码”,您可以创建一个注销按钮,将preference
从true转为false。
要么
你可以查看电话号码的变化:
TelephonyManager tMgr = (TelephonyManager)mAppContext.getSystemService(Context.TELEPHONY_SERVICE);
String mPhoneNumber = tMgr.getLine1Number();
//Required Permission:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
我知道它很晚但可能对初学者有帮助。要验证会话是否已激活,请将此代码放入您初始化Digits电话号码验证按钮的活动的onCreate
中:
TwitterAuthConfig authConfig = new TwitterAuthConfig(TWITTER_KEY, TWITTER_SECRET);
Fabric.with(this, new TwitterCore(authConfig), new Digits.Builder().build());
if (Digits.getActiveSession() != null) {
Intent ss = new Intent(CurrentActivity.this, SecondActivity.class);
startActivity(ss);
finish();
}
无论何时您想要转发电话号码,请致电:
String phone = Digits.getActiveSession().getPhoneNumber();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.