Diese Frage sieht interessant aus. Ich forsche auch. Ich stelle einige nützliche Links zur Verfügung.
https://jwt.io/ - Hier finden Sie JWT-Bibliotheken von Drittanbietern für Android. Da Firebase auf SON Web Tokens (JWTs) basierende Authentifizierung verwendet.
https://firebase.google.com/docs/auth/admin/verify-id-tokens#verify_id_tokens_using_a_third-party_jwt_library
Wir können keine benutzerdefinierten Token in Firebase Admin SDK erstellen. Aber wir können benutzerdefinierte Token von Firebase Authentication Server erstellen. Erläuterung ist hier: h ttps://firebase.google.com/docs/auth/admin/create-custom-tokens
String uid = "some-uid";
HashMap<String, Object> additionalClaims = new HashMap<String, Object>();
additionalClaims.put("premiumAccount", true);
FirebaseAuth.getInstance().createCustomToken(uid, additionalClaims)
.addOnSuccessListener(new OnSuccessListener<String>() {
@Override
public void onSuccess(String customToken) {
// Send token back to client
/* Here, you get the custom token. You can simply store this token in String variable, and later pass as customToken */
}
});
Dieser Link "https://github.com/jwtk/jjwt" stellt APIs Benutzerdefinierte JWT-Token zu erstellen. Nachdem Sie benutzerdefinierte Token erstellen, können Sie
FirebaseAuth.getInstance().signInWithCustomToken(mCustomToken)
.addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (task.isSuccessful()) {
// Sign in success, update UI with the signed-in user's information
Log.d(TAG, "signInWithCustomToken:success");
FirebaseUser user = mAuth.getCurrentUser();
updateUI(user);
} else {
// If sign in fails, display a message to the user.
Log.w(TAG, "signInWithCustomToken:failure", task.getException());
Toast.makeText(CustomAuthActivity.this, "Authentication failed.",
Toast.LENGTH_SHORT).show();
updateUI(null);
}
}
});
verwenden Hinweis: ich dies vor nicht umgesetzt haben. Ich bin einer der sehr interessierten Menschen bei der Umsetzung. Ich werde Ihrer Antwort folgen, wenn Sie dies vollständig lösen.