Android アプリにファブリック数字を統合しました。ログインに成功すると、アプリはホーム画面に移動しますが、デバイスのハードウェア ボタンから最近のアプリを確認すると、2 つのアプリが開きます。1 つはアプリのホーム アクティビティで、もう 1 つは携帯電話番号の入力です。数字で提供される画面、これを修正する方法。ここに数字のログイン用の私のコードがあります
@Override
public void onCreate() {
super.onCreate();
authConfig = new TwitterAuthConfig(TWITTER_KEY, TWITTER_SECRET);
Fabric.with(this, new TwitterCore(authConfig), new Digits());
// Digits.authenticate(authCallback, R.style.AppBaseTheme);
authCallback = new AuthCallback() {
@Override
public void success(DigitsSession session, String phoneNumber) {
// Do something with the session
Toast.makeText(getApplicationContext(), "Success", Toast.LENGTH_SHORT).show();
TwitterAuthToken authToken = (TwitterAuthToken) session.getAuthToken();
DigitsOAuthSigning oauthSigning = new DigitsOAuthSigning(authConfig, authToken);
Map<String, String> authHeaders = oauthSigning.getOAuthEchoHeadersForVerifyCredentials();
///call verification async
retrieveValuesFromListMethod(authHeaders);
PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();
try {
// phone must begin with '+'
Phonenumber.PhoneNumber numberProto = phoneUtil.parse(phoneNumber, "");
countryCode = numberProto.getCountryCode();
phone = numberProto.getNationalNumber();
} catch (NumberParseException e) {
System.err.println("NumberParseException was thrown: " + e.toString());
}
lookupPreference = getApplicationContext()
.getSharedPreferences("lookupPreference",
MODE_PRIVATE);
Gson gson = new Gson();
String json = lookupPreference.getString("user", "");
user = gson.fromJson(json, User.class);
user.setPhoneNumber(phone + "");
user.setCountryCode(countryCode + "");
user.setCountry("");
json = gson.toJson(user);
SharedPreferences.Editor prefsEditor = lookupPreference.edit();
prefsEditor.putString("user", json);
prefsEditor.commit();
Intent i = new Intent(getApplicationContext(), VerifyNumber.class);
Bundle b = new Bundle();
b.putString("digitHeader", new JSONObject(authHeaders).toString());
i.putExtra("values", b);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(i);
}
@Override
public void failure(DigitsException exception) {
// Do something on failure
}
};
mInstance = this;
// Register LocalyticsActivityLifecycleCallbacks
registerActivityLifecycleCallbacks(new LocalyticsActivityLifecycleCallbacks(
this));
}