Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 0f21899

Browse files
authored
Merge pull request #212 from beachcamp/master
Added signInWithProvider and reauthenticateWithCredentialForProvider ...
2 parents 13041ef + 46bfa95 commit 0f21899

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed

‎android/src/main/java/io/fullstack/firestack/FirestackAuth.java‎

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
import com.google.firebase.auth.GetTokenResult;
3535
import com.google.firebase.auth.GoogleAuthProvider;
3636
import com.google.firebase.auth.FirebaseAuthException;
37+
import com.google.firebase.auth.TwitterAuthProvider;
3738

3839
class FirestackAuthModule extends ReactContextBaseJavaModule {
3940
private final int NO_CURRENT_USER = 100;
@@ -153,6 +154,8 @@ public void signInWithProvider(final String provider, final String authToken, fi
153154
this.facebookLogin(authToken,callback);
154155
} else if (provider.equals("google")) {
155156
this.googleLogin(authToken,callback);
157+
} else if (provider.equals("twitter")) {
158+
this.twitterLogin(authToken,authSecret,callback);
156159
} else
157160
// TODO
158161
FirestackUtils.todoNote(TAG, "signInWithProvider", callback);
@@ -215,6 +218,8 @@ public void reauthenticateWithCredentialForProvider(final String provider, final
215218
credential = FacebookAuthProvider.getCredential(authToken);
216219
} else if (provider.equals("google")) {
217220
credential = GoogleAuthProvider.getCredential(authToken, null);
221+
} else if (provider.equals("twitter")) {
222+
credential = TwitterAuthProvider.getCredential(authToken, authSecret);
218223
} else {
219224
// TODO:
220225
FirestackUtils.todoNote(TAG, "reauthenticateWithCredentialForProvider", callback);
@@ -508,6 +513,30 @@ public void onFailure(@NonNull Exception ex) {
508513
});
509514
}
510515

516+
@ReactMethod
517+
public void twitterLogin(String Token, String Secret, final Callback callback) {
518+
mAuth = FirebaseAuth.getInstance();
519+
520+
AuthCredential credential = TwitterAuthProvider.getCredential(Token, Secret);
521+
mAuth.signInWithCredential(credential)
522+
.addOnCompleteListener(new OnCompleteListener<AuthResult>() {
523+
@Override
524+
public void onComplete(@NonNull Task<AuthResult> task) {
525+
if (task.isSuccessful()) {
526+
FirestackAuthModule.this.user = task.getResult().getUser();
527+
userCallback(FirestackAuthModule.this.user, callback);
528+
}else{
529+
// userErrorCallback(task, callback);
530+
}
531+
}
532+
}).addOnFailureListener(new OnFailureListener() {
533+
@Override
534+
public void onFailure(@NonNull Exception ex) {
535+
userExceptionCallback(ex, callback);
536+
}
537+
});
538+
}
539+
511540
// Internal helpers
512541
public void userCallback(FirebaseUser passedUser, final Callback callback) {
513542

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /