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 7972450

Browse files
committed
Merge branch 'master' of github.com:fullstackreact/react-native-firestack
* 'master' of github.com:fullstackreact/react-native-firestack: Only get reference from url if url string is set. Added signInWithProvider and reauthenticateWithCredentialForProvider functionality for Twitter update manual install doc in README.md Fix example FBLogin in README.md
2 parents 04fb02d + ed41383 commit 7972450

File tree

3 files changed

+37
-2
lines changed

3 files changed

+37
-2
lines changed

‎README.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,12 @@ source 'https://github.com/CocoaPods/Specs.git'
122122
].each do |lib|
123123
pod lib
124124
end
125+
126+
target '[project name]' do
127+
end
128+
129+
# target '[project test name]' do
130+
# end
125131
```
126132

127133
Then you can run `(cd ios && pod install)` to get the pods opened. If you do use this route, remember to use the `.xcworkspace` file.
@@ -382,7 +388,7 @@ var Login = React.createClass({
382388
console.log("Logged in!");
383389
console.log(data);
384390
let token = data.credentials.token
385-
firestack.signInWithProvider('facebook', token, '') // facebook need only access token.
391+
firestack.auth.signInWithProvider('facebook', token, '') // facebook need only access token.
386392
.then((user)=>{
387393
console.log(user)
388394
})

‎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

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ public void onFailure(@NonNull Exception exception) {
146146
public void uploadFile(final String urlStr, final String name, final String filepath, final ReadableMap metadata, final Callback callback) {
147147
FirebaseStorage storage = FirebaseStorage.getInstance();
148148

149-
StorageReference storageRef = storage.getReferenceFromUrl(urlStr);
149+
StorageReference storageRef = urlStr!=null ? storage.getReferenceFromUrl(urlStr) : storage.getReference();
150150
StorageReference fileRef = storageRef.child(name);
151151

152152
Log.i(TAG, "From file: " + filepath + " to " + urlStr + " with name " + name);

0 commit comments

Comments
(0)

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