Вопросы с тегами [firebase-authentication]

1

голосов
0

ответ
17

Просмотры

Детонация: экранная клавиатура не открывается, когда TextView ориентирован

Я пытаюсь создать простой логин и экран регистрации для приложения с помощью Firebase аутентификации (адрес электронной почты / пароль). При тестировании на оба физических устройствах и эмуляторе, экранная клавиатура не выскакивает, когда TextView сфокусирован. В некоторых случаях, другой экран, который я не могу определить щелчки вскоре после запуска на долю секунды, но не каждый раз. Он работал сразу после того, как я понял, что я забыл импортировать асинхра и, казалось, на работу. После возобновления работы на нем позже, вдруг клавиатура была не открывать снова. Я попытался удалить довольно много всего моего кода и оставляя только интерфейс, но экранная клавиатура не показывает. Код недействительным основной () => runApp (MaterialApp (название: 'Войти Test', дом: LoginScreen ())); Окончательный FirebaseAuth _auth = FirebaseAuth.instance; Класс LoginScreen расширяет StatelessWidget {TextEditingController _uname = TextEditingController (); TextEditingController _pword = TextEditingController (); Будущее _handleSignIn (вар контекст, String электронной почты, String пароль) асинхронной {Диалог AlertDialog = новый AlertDialog (содержание: новый текст ( "Загрузка ...")); ShowDialog (контекст: контекст, строитель: (BuildContext контекст) => диалог); _auth.signInWithEmailAndPassword (электронная почта: электронная почта, пароль: пароль) .then ((пользователь FirebaseUser) {Print ( "Успех");}) catchError ((е) => Печать (е));. Navigator.pop (контекст); вернуться _auth.currentUser; } @Override виджет сборки (BuildContext контекст) {Контейнер loginScreen; TextField имя пользователя = TextField (контроллер: _uname, украшения: InputDecoration (LabelText: "Электронная почта",), keyboardType: TextInputType.emailAddress,); TextField пароль = TextField (контроллер: _pword, отделка: InputDecoration (LabelText: "Пароль",), keyboardType: TextInputType.text, obscureText: правда,); RaisedButton Войти = RaisedButton (ребенок: Текст ( "Войти"), onPressed: () {_handleSignIn (контекст, _uname.text.toString (), _pword.text.toString ());}); loginScreen = Контейнер (ребенок: Колонка (дети: [имя пользователя, пароль, Логин]), утеплитель: EdgeInsets.all (16)); вернуться (AppBar Леса: AppBar (название: "Войти Screen"), тело: loginScreen); }} По большей части документации, которую я читал, клавиатура должна открываться, когда TextView сфокусирована / выбран, но это ISN» т открытие по причине я не могу показаться, чтобы придавить. Как решить эту проблему?
Lauryn Brough
1

голосов
1

ответ
68

Просмотры

Firebase Database - Share Data When UID Unknown?

В Firebase базы данных; Если user_a есть данные, которые они могут получить доступ и они хотят поделиться этими данными с Пользователем В., что является лучшей практикой и структура базы данных для безопасного обмена данных между этими конкретными пользователями? Важно: user_a не имеет никакой информации о счете, Пользователю B, например, жидкости. Подробный пример: 1) user_a имеет список клиентов. "пользователи": { "user_a": { "клиенты": [ "clientUid", "clientUid2"]}}, "клиенты": { "clientUid": { "Имя": "Джон", "LastName": «Doe "}, "clientUid2": { "FirstName": "Джо", "LastName": "Блогс"}} 2) Пользователь B подписывает. user_a теперь хочет обмениваться данными в клиентах Пользователя В. с Пользователем В. счетом, что подписался. Иные слова: user_a есть список клиентов, один из них создает учетную запись и нужно связать с информацией user_a уже введенной для них. Важным элементом здесь является то, что нет списка пользователей или счетов, что «запрос друга» может быть изготовлен из дополнительных данных. Я экспериментировал с созданием короткого уникального идентификатора пользователь может ввести, когда они подписывают, чтобы получить доступ к данным, но не уверен, если это хороший путь вперед и столкнулся с проблемами. Это отличается от вопросов, ранее спрашивавший совместно используемых данных ", как он сосредоточен на, как связь между двумя пользователями сделали? Не только до и после. один из них создает учетную запись и нужно связать с информацией user_a уже введенной для них. Важным элементом здесь является то, что нет списка пользователей или счетов, что «запрос друга» может быть изготовлен из дополнительных данных. Я экспериментировал с созданием короткого уникального идентификатора пользователь может ввести, когда они подписывают, чтобы получить доступ к данным, но не уверен, если это хороший путь вперед и столкнулся с проблемами. Это отличается от вопросов, ранее спрашивавший совместно используемых данных ", как он сосредоточен на, как связь между двумя пользователями сделали? Не только до и после. один из них создает учетную запись и нужно связать с информацией user_a уже введенной для них. Важным элементом здесь является то, что нет списка пользователей или счетов, что «запрос друга» может быть изготовлен из дополнительных данных. Я экспериментировал с созданием короткого уникального идентификатора пользователь может ввести, когда они подписывают, чтобы получить доступ к данным, но не уверен, если это хороший путь вперед и столкнулся с проблемами. Это отличается от вопросов, ранее спрашивавший совместно используемых данных ", как он сосредоточен на, как связь между двумя пользователями сделали? Не только до и после. Я экспериментировал с созданием короткого уникального идентификатора пользователь может ввести, когда они подписывают, чтобы получить доступ к данным, но не уверен, если это хороший путь вперед и столкнулся с проблемами. Это отличается от вопросов, ранее спрашивавший совместно используемых данных ", как он сосредоточен на, как связь между двумя пользователями сделали? Не только до и после. Я экспериментировал с созданием короткого уникального идентификатора пользователь может ввести, когда они подписывают, чтобы получить доступ к данным, но не уверен, если это хороший путь вперед и столкнулся с проблемами. Это отличается от вопросов, ранее спрашивавший совместно используемых данных ", как он сосредоточен на, как связь между двумя пользователями сделали? Не только до и после.
Josh Kahane
1

голосов
1

ответ
298

Просмотры

как сбросить firebase аутентификации пароля реагировать родные

Я хочу знать, как сбросить пароль firebase пароля аутентификации электронной почты в моем реакции нативного проекта. Мне нравится отправить по электронной почте для сброса пароля. Как это сделать с помощью следующего метода firebase.auth (). SendPasswordResetEmail
1

голосов
1

ответ
87

Просмотры

Ионные + firebase Conection ошибка входа

я пытался работать с родной Google картой ионного добавить карту в моей porject, после установки ионного Cordova плагина добавить Cordova-плагин-GoogleMaps --variable API_KEY_FOR_ANDROID = «YOUR_ANDROID_API_KEY_IS_HERE» --variable API_KEY_FOR_IOS = «YOUR_IOS_API_KEY_IS_HERE» и NPM установки - -save @ ионно-нативный / Google-mapsthe приложение начать с некоторыми ошибками, так что я в decition тока от удаления плагина, после того, как удалить плагин для какой-то причины я получаю эту ошибку от firebase авториза / сети-запроса-провалившийся на эмуляции устройство при попытке любого рода firebase AUTH для входа пользователя, но когда я запустить проект с ионным служить -l показать мне это не распространяется какой-либо ошибки. Любая идея, что может быть случиться. Примечание: если я установить ионный родной плагин для Google Map ошибка auht исчезла, но ошибка возвращается, так что я понятия не имею, что я могу сделать в этом случае. "com.telerik.plugins.nativepagetransitions": {}, "Cordova-плагин-статусный": {}, "Cordova-плагин-х-тосты": {}}, "платформа": [ "андроид"]}} аутентификации .services.ts общественного асинхронное loginUsers (электронная почта: строка, пароль: String): Promise {возвращение ждать this.fireAuth.auth.signInWithEmailAndPassword (электронная почта, пароль); } Login.component.ts общественного логина (): недействительный {this.userProvider.loginUsers (this.user.email, this.user.password) .then ((ответ) => {//}, (ошибка) => { если (error.code == 'авториз / неправильно-пароль') {this.alerts ( 'Войти Сбой', 'Cuenta де Коррео о contraseña incorrecta.');} еще если (error.code == «авториз / user- не обретенная «) {this.alerts (» Войти Сбой «» Коррео Electronico incorrecto о не Existe. '); } Еще если (error.code == 'авториз / сети запроса не удалось') {console.log (ошибка) this.alerts ( 'Ошибка де Conexion', 'Verfique дие Cuenta кон уна Conexion в Интернет.'); }}); }
Miguel Angel Frias
1

голосов
0

ответ
74

Просмотры

Реализация FirebaseAuth в Swift 3

Я использую Xcode 8 (быстрые 3) для создания некоторых приложений, и у меня есть проблемы с созданием Регистра класса. Как вы, наверное, знаете Firebase был недавно обновлен, так что нет учебника для новой версии. Я следовал за этот учебник, но без успеха: https://www.appcoda.com/firebase-login-signup/ импорт импорт Фонд Firebase импорт FirebaseAuth импорт FirebaseAuthUI импорт Toast_Swift класс Регистрация: UIViewController {@IBOutlet слабый вар emailField: UITextField! @IBOutlet слабого уага passField: UITextField! @IBAction FUNC registerButton (_ Отправитель: Любой) {пусть электронная почта = emailField.text пропустят = passField.text, если электронная почта = "" {// Установить Email и пароль для нового пользователя! "&& передать =!". DataService.dataService.BASE_REF.createUser (адрес электронной почты, пароль: пароль, withValueCompletionBlock: {ошибка, в результате, если ошибка = ноль {// Была проблема!. self.signupErrorAlert ( "Упс!", сообщение: ". Nastao JE проблема ИРП kreiranju naloga Probajte ponovo")} еще {// Создать и Вход Новый пользователь с AUTHUSER DataService.dataService.BASE_REF.authUser (электронная почта, пароль: пропуск , withCompletionBlock: {эээ, authData в пользовательской ЛПЭ = [ "поставщик": authData.provider !, "электронная почта": электронная почта] // Печать сделки в DataService.swift DataService.dataService.createNewAccount (authData.uid, пользователь.: пользователь)}) // хранить идентификатор пользователя для доступа в будущем - удобно! . NSUserDefaults.standardUserDefaults () SetValue (результат [ "UID"], forKey: "UID") // Введите приложение. self.performSegueWithIdentifier ( "NewUserLoggedIn", отправитель: ноль)}})} еще {signupErrorAlert ( "Упс!", сообщение: "Zaboravili Ste да popunite электронной почты я / Ил SIFRA полья")}} функ signupErrorAlert (название: String, сообщение: String) {// Вызывается при ошибке SIGNUP, чтобы позволить пользователю знать регистрация не работает. пусть тревога = UIAlertController (название: заголовок, сообщение: сообщение, preferredStyle: UIAlertControllerStyle.Alert) пусть действие = UIAlertAction (название: "Ok", стиль: .Default, обработчик: ноль) alert.addAction (действие) presentViewController (предупреждение,
Martin Pošmuga
1

голосов
1

ответ
115

Просмотры

Как проверить JWT?

Я уверен в примерах, приведенных в документации Google. Как проверить JWT произведенный Firebase, в Google App Engine гибкий сервис? main.go: // ... FUNC главный () {InitializeAppWithServiceAccount () идут lib.GetStockData () http.HandleFunc ( "/ _ ах / someendPoint", SomeHandler)} функ InitializeAppWithServiceAccount () * firebase.App {// [START initialize_app_service_account] выбрать: = option.WithCredentialsFile ( "хранилище ключей / someapp-firebase-adminsdk-1ts1k-1fbbbad63f.json") приложение, эээ! = firebase.NewApp (context.Background (), ноль, неавтоматического), если допустить ошибку = ноль { log.Fatalf ( "ошибка при инициализации приложения:% v \ N", ERR)}} возвращение приложение Func someHandler (ш http.ResponseWriter, г * http.Request) {// Установить тип содержимого: w.Header () Установить (. "Content-Type", "применение / JSON" ) Если r.Header = ноль {ReqToken:! = R.Header.Get ( "Authorization") splitToken: = strings.Split (ReqToken "Носитель") ReqToken = splitToken [1] fmt.Println (ReqToken) // правильно печатает JWT // Проверяем JWT // Если это инвалид, вернуться? // verifyIDToken (??, reqToken) прил: = json.NewEncoder (ш) ERR: = enc.Encode (somedata) fmt.Println ( "просьбу"), если допустить ошибку = ноль {http.Error (ш, эээ!. Error (), http.StatusInternalServerError) возвращение}} http.Error (ш, «Несанкционированный», http.StatusUnauthorized)} Согласно их документации, вы можете использовать следующую функцию для проверки идентификационных маркеров? Но что я прохожу в качестве приложения? Документация на самом деле не говорит. FUNC verifyIDToken (приложение * firebase.App, idToken строка) * auth.Token {// [START verify_id_token] клиент, эээ! = app.Auth (context.Background ()), если допустить ошибку = ноль {log.Fatalf ( "ошибка получение Auth клиент:% v \ п», ERR)} маркер, эээ: = client.VerifyIDToken (idToken), если допустить ошибку = ноль {log.Fatalf (! "ошибка проверки ID маркера:% v \ п", ERR)} журнала .Printf ( "Проверенно ID маркера:% v \ п", маркер) // [END verify_id_token] вернуть маркер} Очевидно, idToken мой маркер из обработчика. Но что это приложение * firebase.App и как бы я передать его в функцию от самого обработчика? ERR)} маркер, эээ: = client.VerifyIDToken (idToken), если допустить ошибку = ноль {log.Fatalf ( "ошибка проверки идентификатора маркера:% v \ п"!, эээ)} log.Printf ( "Проверенно ID маркера:% v \ п», маркер) // [END verify_id_token] вернуть маркер} Очевидно, idToken мой маркер из обработчика. Но что это приложение * firebase.App и как бы я передать его в функцию от самого обработчика? ERR)} маркер, эээ: = client.VerifyIDToken (idToken), если допустить ошибку = ноль {log.Fatalf ( "ошибка проверки идентификатора маркера:% v \ п"!, эээ)} log.Printf ( "Проверенно ID маркера:% v \ п», маркер) // [END verify_id_token] вернуть маркер} Очевидно, idToken мой маркер из обработчика. Но что это приложение * firebase.App и как бы я передать его в функцию от самого обработчика?
cbll
1

голосов
0

ответ
859

Просмотры

getGoogleApiForMethod () возвращается Gms продолжает показывать

Я попытался найти ответ довольно долго и не могу найти решение этой проблемы. Я выпустил мое приложение не так давно в магазине Play, проверки подлинности для firebase и в режиме реального времени базы данных работает нормально в версии. Тем не менее, я хотел бы изменить некоторые из кода и обновлять его в игровом магазине Google. Таким образом, я изменил код в моем Android Studio и проверка подлинности не работает больше. Эта ошибка продолжает появляться. 01-29 23: 58: 28,578 22699-22725 / com.name.package Вт / BiChannelGoogleApi: [FirebaseAuth:] getGoogleApiForMethod () возвращается GMS 01-29 23: 58: 29,745 22699-22725 / com.name.package Вт / BiChannelGoogleApi : [FirebaseAuth:] getGoogleApiForMethod () возвращал GMS вот мой Gradle buildTypes файла {выпуск {отладочного ложного minifyEnabled ложного proguardFiles getDefaultProguardFile (» поддержка: cardview-v7: 27.0.2' реализация 'com.android.support:recyclerview-v7:27.0.2' реализация 'com.github.bumptech.glide: глиссады: 4.4.0 com.github.bumptech' annotationProcessor». скользят: компилятор: 4.4.0' реализация 'com.squareup.retrofit2: модифицированная: 2.3.0' реализация 'com.squareup.retrofit2: конвертер-gson: 2.3.0' реализации 'com.thefinestartist: finestwebview: 1.2.7' реализации «com.github.chrisbanes: PhotoView: 2.0.0» реализация «de.hdodenhof: circleimageview: 2.2.0» 'testImplementation JUnit: JUnit: 4,12} Я попробовал все соответствующие темы StackOverflow, но ни одно из решений не работал мне. Я проверил все сертификаты SHA. Все они хорошо без каких-либо проблем на всех. Может кто-то помочь мне решить эту проблему? Я могу'
applejuice
1

голосов
1

ответ
856

Просмотры

Можно ли интегрировать firebase аутентификацию с AWS лямбда

Я использую рамки Serverless (AWS лямбда-функции), но я хочу, чтобы аутентификация быть сделано firebase. Можно ли интегрировать это два?
Annie Alan
1

голосов
0

ответ
129

Просмотры

Как обращаться с истечением маркеров?

Как следует обращаться с истечением пользовательских маркеров в Firebase? То, что я думал проверяет перед каждым сетевым вызовом, если маркер истек, и если да, то отправить пользователю в Вход View Controller. Я уверен, что это не способ сделать это, хотя, потому что он требует слишком много повторения кода. Как можно «слушать» для истечения маркеров?
Toma Radu-Petrescu
1

голосов
0

ответ
330

Просмотры

Firebase Вторичная аутентификация с номером телефона

В моей Android приложения, есть пользовательские настройки, где пользователь может включить 2-аутентификацию. И я использую Firebase Email / Authentication. Поэтому сразу же после успешного входа в систему, если 2-фактора аутентификации включен пользователь должен получить PIN-код для своих зарегистрированных номеров мобильных телефонов для дальнейшего перехода к приложению. Через док аутентифицировавшегося Firebase на Android, используя номер телефона, я мог видеть, как войти в системе с номером телефона. Но как интегрировать это с проверкой подлинности электронной почты / пароль. Мне нужно более четкие указания по этому вопросу.
mbharanidharan88
1

голосов
0

ответ
100

Просмотры

Firebase расслоение плотной SDK: sendEmailVerification интернационализированы

Я бы очень хотел, чтобы отправить электронную почту через многоязычное firebase-JS-SDK. Я знаю, что это возможно для API Android Firebase с setLanguageCode: Устанавливает код языка пользовательского облицовочный для AUTH операций, которые могут быть МНОГОЯЗЫЧНЫХ, такие как sendEmailVerification (). Этот код языка должен соответствовать правилам, определенным IETF в BCP47 Однако эта функция, кажется, не может присутствовать на firebase-JS-SDK. Я попытался установить firebase атрибут LanguageCode предыдущим вызвать sendEmailVerification с не успехом. Какие-нибудь мысли? Заранее спасибо! РЕШИТЬ: Я нашел решение на основе информации, предоставленной на телефон-AUTH firebase.auth () LanguageCode = «это»;.
Pablo Albaladejo
1

голосов
0

ответ
228

Просмотры

Sign-in with Google not working on some Android Devices

I want my users to have two types of sign-in options - "Sign in with email" and "Sign in with Google". I my application I am using firebase-core:11.8.0, firebase-auth:11.8.0' and firebase-ui-auth:3.2.1'. When I run it on most physical and emulator devices, it works perfectly fine. However, on some devices (mainly with API 27), "Sign in with Google" fails. The log says - E/CredentialSignInHandler: Unexpected exception when signing in with credential google.com unsuccessful. Visit https://console.firebase.google.com to enable it. com.google.firebase.FirebaseException: An internal error has occurred. [ Invalid id_token in IdP response:eyJhbG....., error: Id_token failed validation. ] at com.google.android.gms.internal.zzdxm.zzao(Unknown Source:133) at com.google.android.gms.internal.zzdwn.zza(Unknown Source:43) at com.google.android.gms.internal.zzdxx.zzap(Unknown Source:11) at com.google.android.gms.internal.zzdya.onFailure(Unknown Source:35) at com.google.android.gms.internal.zzdxo.onTransact(Unknown Source:79) at android.os.Binder.execTransact(Binder.java:697) I can confirm both sign in methods are enabled in the console and the updated google-services.json is in the app directory. I am pasting my code here, in case that helps. package com.pustack.android.pustack; import android.content.Intent; import android.os.Bundle; import android.os.CountDownTimer; import android.support.annotation.NonNull; import android.support.v7.app.AppCompatActivity; import android.widget.Toast; import com.firebase.ui.auth.AuthUI; import com.google.firebase.auth.FirebaseAuth; import com.google.firebase.auth.FirebaseUser; import java.util.Arrays; public class LoginActivity extends AppCompatActivity { // Authentication private FirebaseAuth mFirebaseAuth; private FirebaseAuth.AuthStateListener mAuthStateListener; public static final int RC_SIGN_IN = 1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Initialize Firebase Authentication mFirebaseAuth = FirebaseAuth.getInstance(); mAuthStateListener = new FirebaseAuth.AuthStateListener() { @Override public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) { FirebaseUser currentUser = mFirebaseAuth.getCurrentUser(); updateUI(currentUser); } }; overridePendingTransition(R.anim.fadein, R.anim.fadeout); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == RC_SIGN_IN) { if (resultCode == RESULT_OK) { Toast.makeText(this, "Signed in!", Toast.LENGTH_SHORT).show(); } else if (resultCode == RESULT_CANCELED){ finish(); } } } private void updateUI(FirebaseUser user) { if (user != null) { final Intent intent = new Intent(getApplicationContext(), MainActivity.class); new CountDownTimer(1000,1000){ @Override public void onTick(long millisUntilFinished){} @Override public void onFinish(){ startActivity(intent); finish(); } }.start(); } else { startActivityForResult( AuthUI.getInstance() .createSignInIntentBuilder() .setIsSmartLockEnabled(true) .setLogo(R.mipmap.pustack_full_logo_vertical_white) .setTheme(R.style.LoginTheme) .setAvailableProviders(Arrays.asList( new AuthUI.IdpConfig.EmailBuilder().build(), new AuthUI.IdpConfig.GoogleBuilder().build())) .build(), RC_SIGN_IN); } } @Override protected void onPause() { super.onPause(); if(mAuthStateListener != null) mFirebaseAuth.removeAuthStateListener(mAuthStateListener); } @Override protected void onResume() { super.onResume(); mFirebaseAuth.addAuthStateListener(mAuthStateListener); } @Override public void onBackPressed() { super.onBackPressed(); } } I am struggling with this bug for a while now, contacted firebase support and they confirmed that everything is good on their side.
Shivam Gupta
1

голосов
1

ответ
727

Просмотры

Firestore разрешения отказано при использовании signInWithCredential (), React Native Expo

firebase.initializeApp (конфигурации); Const дБ = firebase.firestore (); Const googleSignIn = асинхронный () => {возвращение ждет Expo.Google.logInAsync ({androidClientId, iosClientId, области: [ 'профиля', 'электронной почты'],}); }; Const firebaseLogin = асинхронной (маркер доступа) => {Const креди = firebase.auth.GoogleAuthProvider.credential (нуль, маркер доступа); . Firebase.auth ждут () signInWithCredential (кредите) .catch (console.error); Const = idToken ждут firebase.auth () currentUser.getIdToken (истина) .catch (console.error). }; ждут firebaseLogin (googleSignIn () маркер доступа.); .. Db.collection ( "любой") документ () набор ({тест: "OK"}) я получаю разрешение отказано ошибка при попытке записи в Firestore используя request.auth.uid = NULL;! правила безопасности, но когда я заменить его правда работает. Кажется, что Firestore компонент веб-SDK не отправляет данные для проверки подлинности, даже если API на клиенте сообщает Firebase авторизован, и пользователь дата последний Войти появляется в веб-интерфейс. Необходимо ли передать параметры аутентификации компоненту Firestore при входе в систему непосредственно с Google (вместо использования Firebase API для входа в систему)? Код работает в React родного приложения через Expo. Другой пример, который получает разрешение: Отказано. Firebase.auth () onAuthStateChanged ((пользователь) => {если (пользователь) {firebase.firestore () сбор ( "любой") документ () набор ({тест:... " ХОРОШО"}); } }); Правила // Это нормально: сервис cloud.firestore {матч / базы данных / {база данных} / {документы матч / любой / {документ} {разрешить чтение, запись: если это правда; }}} // Разрешение отказано службы cloud.firestore {матч / базы данных / {базы данных} / {документы матч / любой / {документ} {позволяют читать, писать: если request.auth.uid = NULL; }}} Связанное Firebase Firestore недостающие или недостаточные разрешения с использованием Expo (React Native) https://forums.expo.io/t/firestore-with-firebase-auth-permissions-to-read-write-only-to-signed- в-пользователи / 5705
zino
1

голосов
1

ответ
49

Просмотры

Как создать нового пользователя в firebase с помощью JavaScript

Я делаю веб-приложение. На данный момент я нахожусь в состоянии вводить и извлекать данные в firebase. Я хочу, чтобы ввести адрес электронной почты и пароль подробности моей формы на вкладке «Пользователи» в разделе «Аутентификация» firebase, а затем я пытаюсь войти в систему. Ниже мой код, чтобы ввести свои данные для пользователя. Функция SubmitForm (е) {e.preventDefault (); // получить имя значения переменного = getInputVal ( 'имени'); вар адрес = getInputVal ( 'адрес'); вар электронная почта = getInputVal ( 'электронная почта'); вар телефон = getInputVal ( 'телефон'); вар пароль = getInputVal ( 'пароль'); enterUser (адрес электронной почты, пароль); saveMessage (имя, адрес, электронная почта, телефон, пароль); // показать предупреждение document.querySelector ( 'предупреждение'.) Style.display = 'блок'. // скрыть оповещения после трех ИКС SetTimeout (функция () {document.querySelector ( 'начеку'). Стиль. дисплей = «ни»; }, 3000); . Document.getElementById ( 'ContactForm') сброса (); } Функция enterUser (имя, пароль) {если ((имя) && (пароль)) {firebase.auth (). CreateUserWithEmailAndPassword (имя, пароль) .then (функция (пользователь) {// Вводит новые пользовательские поля console.log (user.email); // ...}); }} Первая функция «SubmitForm» работает, когда я нажимаю кнопку отправки на моем DOM. Эта функция сохраняет все данные в сборнике «сообщения» в firebase. После этого в моей функции «enterUser» я пытаюсь создать пользователь электронной почты и пароль, введенный в «SubmitForm» и ввести его в «аутентификацию пользователей» firebase. Проблема заключается в том, что не создает каких-либо пользователя, как показано на рисунке, приведенном ниже.
Prateek
1

голосов
0

ответ
158

Просмотры

Сетевая ошибка firebase аутентификации на Heroku

У меня есть приложение подается на Heroku, который использует проверку подлинности firebase Google. Когда signInWithPopup всплывающее окно вызывается в хроме это появляется только с белым фоном, не давая возможность для входа в систему, а затем закрывается через пару секунд (я считаю, что это тайм-аут по умолчанию). В консоли ошибка код: «авт / сетевой запрос не удался», сообщение: «ошибка сети (например, тайм-аута, прерванное соединения или недоступности хоста) произошло.» В светлячок, всплывающее окно на самом деле содержит приложение (а не входа в систему, просто небольшая версия приложения в IFRAME), а затем закрывается с консоли ошибок неперехваченного исключение: Ошибка: Всплывающее было закрыто пользователем до завершения операции. Приложение отлично работает на Dev-сервере. В сетевой части хромированных Дев инструментов при обслуживании локально Dev-сервере после того, как кнопки мыши Войти, Я получаю вызов для фрейма с последующим двумя вызовами для getProjectConfig. Однако, когда подается с Heroku, после фрейма позвонить я получаю вызов для расслоения и CSS-файлов. Я проверил конфигурацию Heroku и она выглядит. Нет ошибок сборки. Я не знаю, где еще искать. Heroku приложение на https://expensify-app-take-2.herokuapp.com/ репо на github.com/jmcgloin/expensify Chrome 64, Firefox 58, Ubuntu 16.04. Я признателен за любую помощь (особенно помощь, которая может указывать меня к, как отладить это лучше себя в будущем). Дайте мне знать, если вам нужно больше информации. Heroku приложение на https://expensify-app-take-2.herokuapp.com/ репо на github.com/jmcgloin/expensify Chrome 64, Firefox 58, Ubuntu 16.04. Я признателен за любую помощь (особенно помощь, которая может указывать меня к, как отладить это лучше себя в будущем). Дайте мне знать, если вам нужно больше информации. Heroku приложение на https://expensify-app-take-2.herokuapp.com/ репо на github.com/jmcgloin/expensify Chrome 64, Firefox 58, Ubuntu 16.04. Я признателен за любую помощь (особенно помощь, которая может указывать меня к, как отладить это лучше себя в будущем). Дайте мне знать, если вам нужно больше информации.
jMcG
1

голосов
1

ответ
15

Просмотры

Намерение функция при запуске приложения получить разбился

При нажатии на эту TextView приложение получить разбился и не изменил свою деятельность она, предполагают, чтобы перейти от основной деятельности к другому, как решить это? общественный класс MainActivity расширяет AppCompatActivity реализует View.OnClickListener {частное EditText etEmail; частный EditText etPassword; частный TextView tvLogin; частный TextView tvSignup; частная кнопка btnSignin, btMr; частный FirebaseAuth firebaseAuth; AwesomeValidation awesomeValidation; @Override защищены недействительный OnCreate (Пачка savedInstanceState) {super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); awesomeValidation = новый AwesomeValidation (ValidationStyle.BASIC); updateUI (); firebaseAuth = FirebaseAuth.getInstance (); } Частная пустота updateUI () {etEmail = (EditText) findViewById (R.id.etEmail); tvSignup = (TextView) findViewById (R.id.tvSignup); etPassword = (EditText) findViewById (R.id.etPassword); tvLogin = (TextView) findViewById (R.id.tvLogin); btnSignin = (кнопка) findViewById (R.id.btnLogin); tvSignup.setOnClickListener (новый View.OnClickListener () {@Override общественный недействительный OnClick (View) вид {регистрация ();} общественных недействительные регистрации () {Намерение г = новый Intent (MainActivity.this, Registration.class); startActivity (я );}}); Здесь я использовал удивительные проверки для проверки моей формы, но при запуске приложения показывает сообщение тоста, но не зарегистрировать пользователь, чтобы огнь базы это проверить мою форму, но не регистрирует Струнный regexPassword = «(? =. * [AZ]) ( ? = * [AZ]) (= * [\\ d]) (= * [~ `@ # $% \\ \\ ^ & \\ * \\ (\\?.?.!) \\. - _ \\ + = \\ {\\} \\ [\\] \\ | \\;:.?. \», / \\]) {8, но после добавления этой удивительной проверки это не работает приложение показывает сообщение тоста из проверки и не регистрирует или изменение активность, как я могу объединить оба так, что моя форму получить проверки, а также получить зарегистрируйтесь, чтобы получить мой firebase Идент общественного ничтожной btnLogin_Click (View V) {окончательные progressDialog progressDialog = ProgressDialog.show (MainActivity.this, "Пожалуйста, подождите ....", "Обработка ...", правда); (FirebaseAuth.signInWithEmailAndPassword (etEmail.getText (). ToString (), etPassword.getText (). ToString ())) .addOnCompleteListener (новый OnCompleteListener () {@Override общественная пустота задача OnComplete (@NonNull Task) {progressDialog.dismiss ( ); если (task.isSuccessful ()) {Toast.makeText (MainActivity.this, "ВХОД преуспевающим", Toast.LENGTH_LONG) .show (); Намерение = новый зарегистрировались Намерение (MainActivity.this, Dashboard.class); startActivity (зарегистрировались); } Еще {Log.e (. "ERROR", task.getException () ToString ()); Toast.makeText (MainActivity.this, task.getException () GetMessage (), Toast.LENGTH_LONG.) .Show (); }}}); } @Override общественности недействительным OnClick (View вид) {}} Toast.LENGTH_LONG) .show (); }}}); } @Override общественности недействительным OnClick (View вид) {}} Toast.LENGTH_LONG) .show (); }}}); } @Override общественности недействительным OnClick (View вид) {}}
1

голосов
1

ответ
63

Просмотры

Firebase: Добавить в Зарегистрированный пользователь

Пожалуйста, помогите, я могу добавить значения в мою проверке подлинности пользователя? У меня есть класс CreateUser где я создал мою аутентификацию пользователя. общественный класс CreateUserAccount расширяет AppCompatActivity {личного EditText inputEmail, inputPassword; частная кнопка btnSignUp; частный FirebaseAuth аутентификации; @Override защищены недействительный OnCreate (Пачка savedInstanceState) {super.onCreate (savedInstanceState); setContentView (R.layout.activity_create_account); // Получить Firebase аутентификации экземпляра AUTH = FirebaseAuth.getInstance (); btnSignUp = (кнопка) findViewById (R.id.sign_up_button); inputEmail = (EditText) findViewById (R.id.email); inputPassword = (EditText) findViewById (R.id.password); startActivity (новые Intent (Settings.ACTION_USAGE_ACCESS_SETTINGS)); Toast.makeText (это, " makeText (getApplicationContext () "Пароль слишком короткий Введите минимум 6 символов", Toast.LENGTH_SHORT) .show (); вернуть; } // создать пользователя auth.createUserWithEmailAndPassword (адрес электронной почты, пароль) .addOnCompleteListener (CreateUserAccount.this, новый OnCompleteListener () {@Override общественная пустота задача OnComplete (@NonNull Task) {Toast.makeText (CreateUserAccount.this, "User Account Created" + task.isSuccessful (), Toast.LENGTH_SHORT) .show (); // Если вход не удалась, отображается сообщение для пользователя. Если вход успешно // авторизация состояние слушатель будет уведомлен и логика обрабатывать // подписаны пользователи могут быть обработаны в слушателе. (! Task.isSuccessful ()), если {Toast.makeText (CreateUserAccount.this, "не аутентификации." + Task.getException (), Toast.LENGTH_SHORT) .show (); } еще {startActivity (новое Намерение (CreateUserAccount.this, LandingPage.class)); Конец(); }}}); }}); }} После того, как аутентифицированный пользователь вошел в систему, они могут нажать на странице, где они могут вводить их имена детей, которые записаны в БД в режиме реального времени. общественный класс AddChild расширяет пользователь AppCompatActivity {FirebaseUser = FirebaseAuth.getInstance () getCurrentUser (). Строка useruid = user.getUid (); // мы будем использовать эти константы позже передать имя исполнителя и идентификатор в другую деятельность государственного статический конечная строки ARTIST_NAME = «net.simplifiedcoding.firebasedatabaseexample.artistname»; общественности статической конечной строки ARTIST_ID = «net.simplifiedcoding.firebasedatabaseexample.artistid»; // просматривать объекты EditText editChildName; CardView AddChild; ListView lvChildren; // списка для хранения все художника из списка firebase базы данных детей; // наши databaseChildren DatabaseReference базы данных ссылка на объект; @Override защищен недействительным OnCreate (Bundle savedInstanceState) {супер. OnCreate (savedInstanceState); setContentView (R.layout.activity_add_child); // получение ссылки на художников узла databaseChildren = FirebaseDatabase.getInstance () getReference ( "дети"). // получение просмотров editChildName = (EditText) findViewById (R.id.editChildName); lvChildren = (ListView) findViewById (R.id.lvChildren); AddChild = (CardView) findViewById (R.id.addChild); // список для хранения художников детей = новый ArrayList (); // добавление onclicklistener к кнопке addChild.setOnClickListener (новый View.OnClickListener () {@Override общественного недействительными OnClick (Просмотр вида) {// Вызов метода addArtist () // метод определен ниже // этот метод фактически выполняет операция записи AddChild ();}}); } / * * Этот метод сохранения нового художника к * Firebase в реальном времени базы данных * / частный пустота AddChild () {// Получение значения для сохранения String Name = editChildName.getText () ToString () отделка ()..; // проверка, если значение при условии, если (! TextUtils.isEmpty (имя)) {// получение уникального идентификатора, используя нажим (). GETKEY () метод // это создаст уникальный идентификатор, и мы будем использовать его в качестве основного Ключ для нашего Исполнитель ID ЦЕПИ = databaseChildren.push () GETKEY (). // создание объекта Исполнителя ребенок ребенок = новый ребенок (имя); // Сохранение Исполнитель databaseChildren.child (ID) .setValue (ребенок); // установка EditText на пустой снова editChildName.setText ( ""); // отображение успеха тост Toast.makeText (это, "добавил ребенка", Toast.LENGTH_LONG) .show (); } Еще {// если значение не задано отображение тостов Toast.makeText (это, «Пожалуйста, введите имя», Toast.LENGTH_LONG) .show (); }}} ______CHILD CLASS________ импорта com.google.firebase.database.IgnoreExtraProperties; @IgnoreExtraProperties ребенка общественного класса {частное Струнный ChildName; общественный ребенок () {// требуется этот конструктор} общественности Child (String ChildName) {this.childName = ChildName; } Строка общественного getChildName () {вернуться ChildName; }} Есть ли способ добавления значения DB класса AddChild, что я введённые этому пользователю? Так что авторизованный пользователь может просматривать их детям имена, которые были введены? Спасибо-спасибо LENGTH_LONG) .show (); }}} ______CHILD CLASS________ импорта com.google.firebase.database.IgnoreExtraProperties; @IgnoreExtraProperties ребенка общественного класса {частное Струнный ChildName; общественный ребенок () {// требуется этот конструктор} общественности Child (String ChildName) {this.childName = ChildName; } Строка общественного getChildName () {вернуться ChildName; }} Есть ли способ добавления значения DB класса AddChild, что я введённые этому пользователю? Так что авторизованный пользователь может просматривать их детям имена, которые были введены? Спасибо-спасибо LENGTH_LONG) .show (); }}} ______CHILD CLASS________ импорта com.google.firebase.database.IgnoreExtraProperties; @IgnoreExtraProperties ребенка общественного класса {частное Струнный ChildName; общественный ребенок () {// требуется этот конструктор} общественности Child (String ChildName) {this.childName = ChildName; } Строка общественного getChildName () {вернуться ChildName; }} Есть ли способ добавления значения DB класса AddChild, что я введённые этому пользователю? Так что авторизованный пользователь может просматривать их детям имена, которые были введены? Спасибо-спасибо общественный ребенок () {// требуется этот конструктор} общественности Child (String ChildName) {this.childName = ChildName; } Строка общественного getChildName () {вернуться ChildName; }} Есть ли способ добавления значения DB класса AddChild, что я введённые этому пользователю? Так что авторизованный пользователь может просматривать их детям имена, которые были введены? Спасибо-спасибо общественный ребенок () {// требуется этот конструктор} общественности Child (String ChildName) {this.childName = ChildName; } Строка общественного getChildName () {вернуться ChildName; }} Есть ли способ добавления значения DB класса AddChild, что я введённые этому пользователю? Так что авторизованный пользователь может просматривать их детям имена, которые были введены? Спасибо-спасибо
extragum
1

голосов
1

ответ
238

Просмотры

IOS Firebase вход. Показать индикатор активности после аккаунта Google выбора

У меня есть ViewController с кнопкой Войти используется для входа в Firebase с аккаунтом Google. GIDSignIn.sharedInstance () для входа в аккаунт () При нажатии на кнопку, это появляется: аккаунт Google выборе После выбора учетной записи и, если аутентификация успешный, я хочу, чтобы загрузить вторую ViewController. Для этого у меня есть слушатель в первом ViewController, который будет подписывать снова, когда изменяется состояние аутентификации, на этот раз успешно, не спрашивая счет снова и посылает меня непосредственно ко второму ViewController:. Auth.auth () addStateDidChangeListener ({AUTH пользователь в случае пусть _ = пользователь {GIDSignIn.sharedInstance (). зарегистрировались ()}}) проблема заключается в том, что я хочу, индикатор активности, чтобы показать, когда я возвращаюсь к первому ViewController от выбора аккаунта. Поскольку приложение может быть там в течение нескольких секунд в процессе аутентификации, и я не хочу, чтобы пользователь снова нажмите кнопку Вход, в то время как первое подписание в еще не закончено. Мне нужен способ, чтобы признать, что подписание в процессе имеет место, чтобы показать индикатор активности, который блокирует экран, чтобы запретить пользователю нажав снова Войти. Способ 1 Когда я нажимаю Вход с кнопкой Google, я установить UserDefaults целое число равно 1. Тогда, когда ViewController перезагружается после выбора аккаунта Google, я смотрю на этого целое, и если он равен 1, я не остановить индикатор активности. Потому что я хочу, чтобы индикатор активности показан, так как пользователь нажимает на кнопку, пока аутентификация не будет завершена. При нажатии кнопки я: GIDSignIn.sharedInstance () для входа в аккаунт () UserDefaults.standard.set (1, forKey:. " completionHandlerSigIn {self.stopActivityIndicator ()} А функция заключается в следующем: функ completionHandlerSigIn (завершение: () -> Пустота) {. GIDSignIn.sharedInstance () для входа в аккаунт ()} Проблема заключается в том, что вид перезагружается во время регистрации в процессе, после счета выбора. Мне нужен способ, чтобы признать, что я из экрана выбирает аккаунт Google.
Sergio
1

голосов
2

ответ
66

Просмотры

Почему Главная обнаружился Перед Странице Логина?

Как мои ожидания, пользователь не должен видеть любую страницу, пока они не подписаны в текущее поведение при выполнении приложения: показать главную страницу (около одной секунды) -> показать Логин страница ожидаемое поведение:. Показать Войти страница -> подписанную в -> показать основные страницы Вопросы : Как изменить текущее поведение к ожидаемому поведению? По запуска потока (прилагается ниже), страница Войти срабатывала, «фрагмент MainActivity в: OnCreate». Почему на главной странице появилась перед входом страницы? После основного потока, вызывающего startActivityForResult (), если он остановится и ждет входа пользователя? почему она продолжает работать? Большое спасибо за Вашу помощь. Есть один активность и два фрагмента в APP. FirebaseAuth UI (Логин страницы) запускается на onResume () метод. Здесь работает поток для приложения: MainActivity: OnCreate: MainActivity: OnStart: MainActivity: onResume: MainActivity: startLoginProcess: Показать Логин страницу MainActivity в фрагмент: OnCreate: фрагмент MainActivity в: onActivityCreated: фрагмент MainActivity в: OnStart: фрагмент MainActivity в: фрагмент MainActivity в:: onResume OnPause: MainActivity: фрагмент MainActivity в:: OnPause OnStop: MainActivity: OnStop: AndroidManifest .xml общественного класса MainActivity расширяет AppCompatActivity {личное статический конечный ИНТ RC_SIGN_IN = 1; частный статический конечная строка TAG = «MainActivity»; частный FirebaseAuth mFirebaseAuth; частный FirebaseAuth.AuthStateListener mAuthStatListener; @Override защищены недействительный OnCreate (Пачка savedInstanceState) {super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); initializeScreen (); setupLogin (); Log.d (TAG, "OnCreate:"); } @Override защищен OnStart пустот () {super.onStart (); Log.d (TAG, "OnStart:"); } @Override защищен OnStop пустот () {super.onStop (); Log.d (TAG, "OnStop:"); } @Override защищен недействительный onResume () {super.onResume (); mFirebaseAuth.addAuthStateListener (mAuthStatListener); Log.d (TAG, "onResume:"); } @Override защищен OnPause пустот () {super.onPause (); mFirebaseAuth.removeAuthStateListener (mAuthStatListener); Log.d (TAG, "OnPause:"); } Частная пустота initializeScreen () {ViewPager ViewPager = (ViewPager) findViewById (R.id.viewpager); PanelFragmentAdapter panelFragmentAdapter = новый PanelFragmentAdapter (getSupportFragmentManager (), MainActivity.this); viewPager.setOffscreenPageLimit (2); viewPager.setAdapter (panelFragmentAdapter); TabLayout tabLayout = (TabLayout) findViewById (R.id.sliding_tabs); tabLayout.setupWithViewPager (ViewPager); } @Override защищен недействительным onActivityResult (Int, Int requestCode ResultCode, умысел данные) {super.onActivityResult (requestCode, ResultCode, данные); // RC_SIGN_IN является запрос кода вы перешли в startActivityForResult (...) при запуске знака в потоке. если (requestCode == RC_SIGN_IN) {если (== ResultCode RESULT_OK) {Toast.makeText (это, "подписанный в успехе", Toast.LENGTH_SHORT) .show (); } Иначе, если (ResultCode == RESULT_CANCELED) {Toast.makeText (это, "пользователь отменил", Toast.LENGTH_SHORT) .show (); Конец(); } Еще {Toast.makeText (это " createSignInIntentBuilder () .setIsSmartLockEnabled (ложные) .setAvailableProviders (Arrays.asList (новый AuthUI.IdpConfig.EmailBuilder () построить (), новый AuthUI.IdpConfig.GoogleBuilder () построить ())..) .build (), RC_SIGN_IN); } / ** * Создано Йорика на 2018/2/2. * / Общественный класс PanelFragmentAdapter расширяет FragmentPagerAdapter {частный контекст контекста; частная String [] mTitles = новая строка { "меню", "порядок"} []; общественный PanelFragmentAdapter (FragmentManager фм, контекст Context) {супер (фм); this.context = контекст; } @Override общественного Фрагмент GetItem (промежуточное положение) {фрагмент фрагмент = NULL; переключатель (положение) {случай 0: фрагмент = MenuFragment.newInstance (); перерыв; Случай 1: фрагмент = PanelOrderFragment.newInstance (); перерыв; по умолчанию: фрагмент = MenuFragment.newInstance (); } Возвращать фрагмент; } @Override общественного ИНТ GetCount () {вернуть 2; } @Override общественный CharSequence getPageTitle (промежуточное положение) {возврата mTitles [положение]; }}} } @Override общественный CharSequence getPageTitle (промежуточное положение) {возврата mTitles [положение]; }}} } @Override общественный CharSequence getPageTitle (промежуточное положение) {возврата mTitles [положение]; }}}
YoLin060
1

голосов
0

ответ
165

Просмотры

Firebase: onAuthStateChanged поставляется со старым пользователем Uid

Я стареть (ранее зарегистрированный) пользователь Uid в onAuthStateChanged после удаления firebase учетной записи, а затем сразу же создать новую. Но это случается не каждый раз, и я не знаю, что это зависит от. Какие-либо предложения? Также FirebaseAuth.getInstance (). GetCurrentUser () равно нулю в этой функции обратного вызова, которая странно тоже. Могущество процесс удаления зависит от завершения functions.auth.user (). OnDelete в Firebase функции, но я не уверен. @Override общественного недействительными onAuthStateChanged (@NonNull FirebaseAuth firebaseAuth) {// повторно AUTH потребность для удаления потока счета, если (reAuthFirebase) {Log.d (TAG, "onAuthStateChanged reAuthFirebase"); reAuthFirebase = ложь; вернуть; } // игнорировать 1-ый обратный вызов http://stackoverflow.com/a/40436769/1621111 если (isFirstAuthCallback) {Log.d (TAG, "
1

голосов
0

ответ
122

Просмотры

Аутентификация при помощи пользовательского токена Использование Firebase терпит неудачу

Firebase инициализируется с несколькими приложениями: - Узел JS, на стороне сервера: - admin.auth (requiredFile.app) .createCustomToken (UID, additionalClaims) В AngularClient стороне, я успешно получил маркер: - Передает тот же маркер, как требуется. firebase.auth (allApps [I]) signInWithCustomToken (маркер) .then ((Рез) => {console.log (RES);}).. .catch ((ошибка) => {// Обработка ошибок здесь вар ERRORCODE = error.code; вар ErrorMessage = Error.message; console.log (ошибка);}); ОШИБКА SCREENSHOT: - Вот полный текст ошибки Ошибка: -Failed загрузить ресурс: сервер ответил со статусом 404 () база: 1 Не удалось загрузить googleapis.com/identitytoolkit/v3/relyingparty/...: Ответ на предполетной имеет недопустимый HTTP код состояния 404. zone.js: 388 L код: "
Nidhi
1

голосов
1

ответ
254

Просмотры

Firebase не может проверить подлинность после построения электронного приложения

У меня есть проблема с Firebase, React и Electron. Когда я использую мое приложение в разработчике, я использую локальный сервер для загрузки с реагировать-скрипты запуска, поэтому он загружается в HTTP: // локальный: 3000. Я использую этот URL, чтобы загрузить мое приложение с Electron. НО когда я пытаюсь идти в производство, я использую электрон-строитель. Я строй моего приложения с билдом реагировать-скрипт, это создать папку сборки, а также для электронного приложения, изменить загрузку URL для файла: // $ {path.join (__dirname, «../build/index.html» .. Я использую построить -c.extraMetadata.main = сборки / electron.js это теперь загружается отлично, но когда я пытаюсь проверить подлинность ничего не произошло, и в консоли, он говорит: код: авториз / операция-это-не поддерживаемые в -за-Environnement сообщение:. Эта операция не поддерживается в Environnement это работает на «location.protocol» должен быть HTTP, HTTPS или хром расширение и веб-хранилище должно быть включить Как я могу решить эту проблему? Моя гипотеза, что это потому, что я не пишу URL моего приложения в Авторизованных доменов в Firebase Вход в методе, но нет URL для моего приложения, он местный. Нужно ли я загрузить сервер трудоустроить Firebase? Я вижу подобный пост, но без ответа
Monsieur Sam
1

голосов
0

ответ
91

Просмотры

Firebase с Google (только Входа)

Я пытаюсь сделать проверку подлинности с firebase, что позволяет только вход в ранее созданных пользователями, и я хочу сделать это с помощью Google. Firebase предоставляет Google Вход в систему, но она создает у пользователя, если он не существует. Существует способ, чтобы изменить код, чтобы только Вход зарегистрированных пользователей? Если нет, то вы можете посоветовать мне создать подобный логин? Login.java общественного класса LoginActivity расширяет AppCompatActivity реализует GoogleApiClient.OnConnectionFailedListener {частное GoogleApiClient GoogleApiClient; частный SignInButton signInButton; общественности статической окончательный ИНТ SIGN_IN_CODE = 777; частный FirebaseAuth firebaseAuth; частный FirebaseAuth.AuthStateListener firebaseAuthListener; частный ProgressBar ProgressBar; @Override защищен недействительным OnCreate (Bundle savedInstanceState) {супер. OnCreate (savedInstanceState); setContentView (R.layout.activity_login); GoogleSignInOptions ГСО = новый GoogleSignInOptions.Builder (GoogleSignInOptions.DEFAULT_SIGN_IN) .requestIdToken (GetString (R.string.default_web_client_id)) .requestEmail () .build (); GoogleApiClient = новый GoogleApiClient.Builder (это) .enableAutoManage (это, это) .addApi (Auth.GOOGLE_SIGN_IN_API, GSO) .build (); signInButton = (SignInButton) findViewById (R.id.entrar); signInButton.setSize (SignInButton.SIZE_WIDE); signInButton.setColorScheme (SignInButton.COLOR_DARK); signInButton.setOnClickListener (новый View.OnClickListener () {@Override общественного недействительный OnClick (View v) {Намерение Намерения = Авт. GoogleSignInApi.getSignInIntent (GoogleApiClient); startActivityForResult (намерение, SIGN_IN_CODE); }}); firebaseAuth = FirebaseAuth.getInstance (); firebaseAuthListener = новый FirebaseAuth.AuthStateListener () {@Override общественного недействительными onAuthStateChanged (@NonNull FirebaseAuth firebaseAuth) {FirebaseUser пользователя = firebaseAuth.getCurrentUser (); если (! пользователь = NULL) {goMainScreen (); }}}; Progressbar = (ProgressBar) findViewById (R.id.progressBar); } @Override защищен OnStart пустот () {super.onStart (); firebaseAuth.addAuthStateListener (firebaseAuthListener); } @Override общественного недействительными onConnectionFailed (@NonNull ConnectionResult connectionResult) {} @Override защищен недействительным onActivityResult (INT requestCode, внутр ResultCode, Intent данные) {super.onActivityResult (requestCode, ResultCode, данные); если (requestCode == SIGN_IN_CODE) {GoogleSignInResult результат = Auth.GoogleSignInApi.getSignInResultFromIntent (данные); handleSignInResult (результат); }} Частная пустота handleSignInResult (GoogleSignInResult результат) {если (result.isSuccess ()) {firebaseAuthWithGoogle (result.getSignInAccount ()); } Еще {Toast.makeText (это "НЕТ S'HA POGUT CONNECTAR", Toast.LENGTH_SHORT) .show (); }} Частная пустота firebaseAuthWithGoogle (конечная GoogleSignInAccount signInAccount) {progressBar.setVisibility (View.VISIBLE); signInButton.setVisibility (View.GONE); AuthCredential учетных данных = GoogleAuthProvider.getCredential (signInAccount.getIdToken (), NULL); firebaseAuth.signInWithCredential (удостоверение) .addOnCompleteListener (это, новый OnCompleteListener () {@Override общественная пустота задача OnComplete (@NonNull Task) {progressBar.setVisibility (View.GONE); signInButton.setVisibility (View.VISIBLE!), если (задача .isSuccessful ()) {Toast.makeText (getApplicationContext (), "НЕТ S'HA POGUT AUTENTIFICAR", Toast.LENGTH_SHORT) .show ();}}}); } Частная пустота goMainScreen () {Намерение Намерения = новое Намерение (это, MainMenu.class); intent.addFlags (Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK); startActivity (намерение); } @Override защищен OnStop пустот () {super.onStop (); если (firebaseAuthListener! = NULL) {firebaseAuth.removeAuthStateListener (firebaseAuthListener); }}} removeAuthStateListener (firebaseAuthListener); }}} removeAuthStateListener (firebaseAuthListener); }}}
Tatsuya
1

голосов
1

ответ
155

Просмотры

Unable to login after importing user into Firebase Authentication

We are migrating users into Firebase Auth from legacy db who have their passwords hashed with SHA512. We are able to successfully import the users into Firebase. However, when we try to login again with those users through Firebase Authentication, it gives an error: Invalid password or this user has no password Following are the details of code structure, the command used to import users, and the user.json that we are using. Password:test Salt: salt Password+salt hashed in SHA512: 6c838e934e3feefae6cfa53af11375d4954f85c6f5ed888c02cd7806a71696d1cb449f2be78e9e6ea301a95c81f28ad8766f3ae582f9beaac33c7dc2b7ba9187 Base-64 encoded password+salt: NmM4MzhlOTM0ZTNmZWVmYWU2Y2ZhNTNhZjExMzc1ZDQ5NTRmODVjNmY1ZWQ4ODhjMDJjZDc4MDZhNzE2OTZkMWNiNDQ5ZjJiZTc4ZTllNmVhMzAxYTk1YzgxZjI4YWQ4NzY2ZjNhZTU4MmY5YmVhYWMzM2M3ZGMyYjdiYTkxODc= Base-64 encoded salt: c2FsdA== User.json: { "users": [ { "localId": "123", "emailVerified": true, "email": "[email protected]", "passwordHash": "NmM4MzhlOTM0ZTNmZWVmYWU2Y2ZhNTNhZjExMzc1ZDQ5NTRmODVjNmY1ZWQ4ODhjMDJjZDc4MDZhNzE2OTZkMWNiNDQ5ZjJiZTc4ZTllNmVhMzAxYTk1YzgxZjI4YWQ4NzY2ZjNhZTU4MmY5YmVhYWMzM2M3ZGMyYjdiYTkxODc=", "salt": "c2FsdA==" } ] } Firebase command for importing user.json: firebase --project=projectname auth:import user.json --hash-algo=SHA512 --rounds=80 Pleas let us know what we are missing here Thank You
Pratik Bidkar
1

голосов
3

ответ
31

Просмотры

Как сохранить правильный порядок страницы входа и домашней страницу с firebase входа в ИО?

Это может показаться очень простым. Но я не мог найти выход. Я использую проверку подлинности firebase, если это необходимо знать заранее. Контроллер исходного вида устанавливаются как LoginViewController. Я две кнопки здесь: Регистрация & Вход. Кнопка Регистрации представляет другой вид контроллер модальна, где пользователь может выбрать для подписания. После успешной регистрации аккаунта, то SignUpViewController уволен, так появляется LoginViewController. Внутри viewDidAppear в LoginViewController в (_ :) я проверяю для текущего пользователя, и если доступный пользователю перенаправлять на HomeViewController: класс LoginViewController: UIViewController {переопределение функ viewDidAppear (_ анимированный: Bool) {super.viewDidAppear (анимированный), если пусть _ = Auth.auth ( ) .currentUser {// Это модальный переход performSegue (withIdentifier: " что я хочу, если пользователь вошел в уже первом виде он / она будет видеть это HomeViewController кроме LoginViewController. Но если пользователь не раньше, не войти, он / она будет высадить на LoginViewController. Да, я мог проверить из заявления AppDelegate (в _: didFinishLaunchingWithOptionss :) для текущего пользователя, и если найден, перейти непосредственно к HomeViewController. Но тогда я потерял бы LoginViewController, когда пользователь нажимает на Выходе в HomeViewController. На первый взгляд это довольно много, что мне нужно выполнить: Ничего даже не пример кода ценится. didFinishLaunchingWithOptionss :) для текущего пользователя, и если найдено, перейти непосредственно к HomeViewController. Но тогда я потерял бы LoginViewController, когда пользователь нажимает на Выходе в HomeViewController. На первый взгляд это довольно много, что мне нужно выполнить: Ничего даже не пример кода ценится. didFinishLaunchingWithOptionss :) для текущего пользователя, и если найдено, перейти непосредственно к HomeViewController. Но тогда я потерял бы LoginViewController, когда пользователь нажимает на Выходе в HomeViewController. На первый взгляд это довольно много, что мне нужно выполнить: Ничего даже не пример кода ценится.
nayem
1

голосов
1

ответ
52

Просмотры

Anonymous sign in with Firebase affecting Facebook login

У меня возникли некоторые проблемы с попытками войти / авторизовать Facebook в сочетании с Firebase анонимной знаком. У меня в настоящее время есть регулярные UIButton, который пытается зарегистрировать пользователя с использованием кода ниже. пусть loginManager = FBSDKLoginManager () loginManager.logIn (withReadPermissions: [ "public_profile", "электронная почта", "user_friends"], из: я, обработчик: {(результат: FBSDKLoginManagerLoginResult !, ошибка) -> Пустота в // получить fbsdk маркер и войти в систему через firebase}) Как правило, при нажатии на кнопку появится нормальное поведение где, по alertController дисплеи и запрашивает у пользователя, если они хотят использовать facebook.com, чтобы войти. После нажатия на кнопку продолжить, Safari (или facebook) открывает для авторизации приложение. Это все хорошо и денди, но если пользователь сначала анонимно подписывает в от Firebase, нажав на ту же кнопку, чтобы войти в систему через Facebook теперь будет не в состоянии. После alertController всплывает спросить у пользователя, вместо того, чтобы представлять Safari для авторизации facebook, это выглядит, как будто экран (Safari) прерывает на полпути во время презентации и просто остается на текущем экране. Если нажать на кнопку еще раз, приложение будет, наконец, аварии без каких-либо сообщений об ошибках (это будет просто показать сообщение EXC_BAD_ACCESS на AppDelegate). В качестве примера, я поставил код ниже, чтобы показать, как гарантировать провал facebook входа в систему. . Auth.auth () {signInAnonymously (пользователь, ошибка) в случае ошибки пусть = {ошибки печати (error.localizedDescription)}, если позволяют пользователю = пользователь {пусть loginManager = FBSDKLoginManager () loginManager.logIn (withReadPermissions: [ "public_profile", "электронная почта", "user_friends"], от: Я, обработчик: {(результат: FBSDKLoginManagerLoginResult !, ошибка) -> Пустота в // получить fbsdk маркер и войти в систему через firebase})}} Очевидно, что в моем настоящем коде, я не пытаюсь немедленно войти после ввода знака анонимно, но это показывает, что анонимное подписание явно влияет FBSDKLoginManager каким-то образом. Я посмотрел на SO, но на самом деле не видел любой вопрос относительно этого. Интересно, если это ошибка, или если я просто что-то отсутствует. Это на IOS / Swift FYI. Спасибо! м не пытаются войти сразу после регистрации анонимно, но это показывает, что анонимное подписание явно влияет FBSDKLoginManager каким-то образом. Я посмотрел на SO, но на самом деле не видел любой вопрос относительно этого. Интересно, если это ошибка, или если я просто что-то отсутствует. Это на IOS / Swift FYI. Спасибо! м не пытаются войти сразу после регистрации анонимно, но это показывает, что анонимное подписание явно влияет FBSDKLoginManager каким-то образом. Я посмотрел на SO, но на самом деле не видел любой вопрос относительно этого. Интересно, если это ошибка, или если я просто что-то отсутствует. Это на IOS / Swift FYI. Спасибо!
victorydub
1

голосов
0

ответ
68

Просмотры

Google Android Экран для входа в аккаунт Issue

Я пытаюсь использовать Google знак в моем приложении .. Я могу успешно войти в системе, если какая-либо существующая учетная запись используется для регистрации, но если нажать на «Добавить учетную запись», а затем добавить новую учетную запись, то учетная запись будет добавлена ​​(в устройстве раздела счета) но приложение получает ударил на прозрачном тусклом экране, и когда пользователь нажимает на нее я получаю сообщение об ошибке обратного вызова, как «Внутренняя ошибка сервера». Любой из них имеет решение для этого ?? Намерение signInIntent = mGoogleSignInClient.getSignInIntent (); startActivityForResult (signInIntent, RC_SIGN_IN); Этот код я исполняю, когда пользователь нажимает на кнопку Войти
Harsh Agrawal
1

голосов
0

ответ
27

Просмотры

error in execution time with firebase-ui-auth

I have this error: java.lang.NullPointerException: Attempt to invoke interface method 'java.lang.CharSequence android.view.inputmethod.InputConnection.getTextAfterCursor(int, int)' on a null object reference at android.view.inputmethod.InputConnectionWrapper.getTextAfterCursor(InputConnectionWrapper.java:86) at com.android.internal.view.IInputConnectionWrapper.executeMessage(IInputConnectionWrapper.java:246) at com.android.internal.view.IInputConnectionWrapper$MyHandler.handleMessage(IInputConnectionWrapper.java:85) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:164) at android.app.ActivityThread.main(ActivityThread.java:6494) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807) This is the code...: public class MainActivity extends AppCompatActivity { private FirebaseAuth firebaseAuth; private FirebaseAuth.AuthStateListener authStateListener; private static final int RC_SIGN_IN = 123; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); firebaseAuth = FirebaseAuth.getInstance(); authStateListener = new FirebaseAuth.AuthStateListener() { @Override public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) { FirebaseUser fbUser = firebaseAuth.getCurrentUser(); if (fbUser != null){ } else { startActivityForResult( AuthUI.getInstance() .createSignInIntentBuilder() .setIsSmartLockEnabled(false) .setAvailableProviders(Arrays.asList( new AuthUI.IdpConfig.EmailBuilder().build(), new AuthUI.IdpConfig.GoogleBuilder().build())) .build(), RC_SIGN_IN); } } }; } Any idea what can be wrong? THANKS!
ABG
1

голосов
1

ответ
42

Просмотры

Исключение Google Firabase Аутентификация с помощью электронной почты

Я пишу приложение для Android. Я тоже новичок. Я скопировал и вставил образец в мой проект. Я хочу сделать проверку подлинности. Но это дает мне исключение связи. Я создал firebase. Я подключаюсь к моему firebase серверу. Но Существует еще одно исключение. Я нажимаю на мою кнопку и результат всегда возвращаю меня. Результат же исключение. Вот мой код, расположение и изображения: введите описание изображения введите описание изображения здесь Мой макет: Мои коды: AUTH = FirebaseAuth.getInstance (); uyeParola = (EditText) findViewById (R.id.uyeParola); uyeEmail = (EditText) findViewById (R.id.uyeEmail); uyeGirisButton = (кнопка) findViewById (R.id.uyeGirisButton); uyeGirisButton.setOnClickListener (новый вид. OnClickListener () {@Override общественного недействительный OnClick (View вид) {}}); yeniUyeButton = (кнопка) findViewById (R.id.yeniUyeButton); yeniUyeButton.setOnClickListener (новый View.OnClickListener () {@Override общественного недействительными OnClick (View v) {Строка электронной почты = uyeEmail.getText () ToString ();. Строка Parola = uyeParola.getText () ToString ();. если (Textutils .isEmpty (электронная почта)) {Toast.makeText (getApplicationContext (), "Lütfen emailinizi giriniz", Toast.LENGTH_SHORT) .show (); возвращение;} если (TextUtils.isEmpty (Parola)) {Toast.makeText (getApplicationContext () , "Lütfen parolanızı giriniz", Toast.LENGTH_SHORT) .show ();
1

голосов
0

ответ
134

Просмотры

предупреждение Переполнения назначения во время отправки проверки электронной почты с использованием firebase для андроида

Ниже изображения показывает Firebase фрагмент кода, используемый для отправки проверки электронной почты для моих приложений пользователей, когда они подписывают. Выделенная область в изображении дает следующее предупреждение: Unchecked задание: «анонимный com.google.android.gms.tasks.OnCompleteListener» на «» com.google.android.gms.tasks.OnCompleteListener меньше ... (Ctrl + F1 ) сигналы места, где непроверенное выдаются предупреждение компилятора, например: F (пустого HashMap карты) {map.put ( «ключ», «значение»); } Подсказка: Pass -Xlint: снят с JAVAC, чтобы получить более подробную информацию. Я не могу интерпретировать предупреждение. Как я могу избавиться от этого предупреждения? Любой вид помощи будет весьма признателен.
MONU KUMAR
1

голосов
0

ответ
99

Просмотры

Implementing single sign on between multiple Firebase instances

Я пытаюсь создать единый вход между несколькими Firebase экземплярами. Так скажем, у меня есть проект под названием UserBase, а затем у меня есть еще проекты под названием Sales. Оба проекта используют одни и те же пользователи, так что я буду настраивать Firebase аутентификации по проекту Userbase, и я хочу, чтобы войти на другой с теми же пользователями. То, что я думал, что было что-то вроде этого: я создаю веб-страницу login.example.com, что связанно с проектом Userbase, и он принимает имя пользователя и пароль, а также другую страницу для продажи, которые будут перенаправлять на эту страницу. Пользователь перейти по продажам и нажимает на «Вход», то откроется всплывающее окно для login.example.com с адресом обратного вызова. После успешного входа в систему я получу токен с пользователем. getIdToken и отправить его в облако функции (Userbase), который будет проверять маркер и передать его на другой функции Cloud (Sales), используя адрес обратного вызова, который будет возвращать маркер для продаж, и этот маркер будет возвращен на страницу продаж, и тогда я буду использовать signInWithCustomToken, чтобы войти в систему с действительным продаж токена. Что-то вроде этого: TokenU является JWT для UserBase, лексемы являются JWT по продажам | страницам продаж | -callback-> | Войти страница | -tokenU-> | UserBase Облако функции | -token -> |? продаж Облако функции | | | | Войти страница | -tokenU-> | UserBase Облако функции | -token -> |? продаж Облако функции | | | | Войти страница | -tokenU-> | UserBase Облако функции | -token -> |? продаж Облако функции | | |
Ricardo Smania
1

голосов
0

ответ
280

Просмотры

Login and sign up issue

В настоящее время я пытаюсь создать новое приложение (полный Novice) Я побежал в странный вопрос на входе page.The Процесс регистрации работает мелкие Подключается к firebase и возвращается к экрану входа в систему, то можно войти в систему и переходит в следующая деятельность. Проблема возникает, когда вы загрузите приложение и использовать данные для повторного входа в систему кнопка Логина не работает, пока вы идете в знак вверх деятельность и выйти из него, то кнопки Войти работает отлично и позволяет войти в системе. Защищаемая пустота OnCreate (Пачка savedInstanceState) {super.onCreate (savedInstanceState); setContentView (R.layout.activity_login); Кнопка Кнопка = findViewById (R.id.signupbtn); button.setOnClickListener (новый View.OnClickListener () {общественного недействительный OnClick (View v) {openSignupActivity ();}}); } частная пустота openSignupActivity () {Намерение Намерение = новое Намерение (LoginActivity.this, SignupActivity.class); startActivity (намерение); setContentView (R.layout.activity_login); LoginEmail = findViewById (R.id.LoginEmail); LoginPassword = findViewById (R.id.LoginPassword); Loginprogressbar = findViewById (R.id.Loginprogressbar); Mauth = FirebaseAuth.getInstance (); findViewById (R.id.Loginbtn) .setOnClickListener (это); если условия между ними, если (task.isSuccessful ()) {Toast.makeText (getApplicationContext (), "Вход Successful", Toast.LENGTH_SHORT) .show (); Конец(); startActivity (новое Намерение (LoginActivity.this, MainActivity.class)); @Override общественный недействительный OnClick (View v) {переключатель (v.getId ()) {случай R.id.Loginbtn: Loginuser (); перерыв;
Elliott
1

голосов
0

ответ
175

Просмотры

Firebase email link authentication option not available on firebase console

I am trying the email link authentication for my app on android. When I try to send an email, it gives the error: This operation is not allowed. You must enable this service in the console. The document on (Email link auth) says: To sign in users by email link, you must first enable the Email provider and Email link sign-in method for your Firebase project: In the Firebase console, open the Auth section. On the Sign in method tab, enable the Email/Password provider. Note that email/password sign-in must be enabled to use email link sign-in. In the same section, enable Email link (passwordless sign-in) sign-in method. I did the first 2 steps. However, there is no passwordless sign-in option available on the console, nor any options under email/password authentication. See attached screenshot.
Ana Redmond
1

голосов
0

ответ
117

Просмотры

Показать Leaderboards с Firebase AUTH: NoClassDefFoundError

Я работаю на простую игру для Android, и я хочу использовать Google Play Игры Leaderboard. Я был в состоянии интегрировать и протестировать его, и все было хорошо, пока я не решил, что я тоже хочу Firebase. Я был в состоянии решить проблемы с двойной аутентификацией, но я не смог показать экран Полноразмерного. Вот мой код: Аутентификация: this.signInClient = GoogleSignIn.getClient (контекст, GoogleSignInOptions.Builder (GoogleSignInOptions.DEFAULT_GAMES_SIGN_IN) .requestServerAuthCode (context.getString (R.string.default_web_client_id)) .requestEmail () .requestProfile () .build ( .)) частная забава signInSilently () {signInClient.silentSignIn () addOnCompleteListener (это) {задача -> если (task.isSuccessful) {onConnected (задача. getLeaderboardsClient (это, GoogleSignIn.getLastSignedInAccount (это) !!) .getLeaderboardIntent (идентификатор) .addOnSuccessListener {startActivityForResult (это, LEADERBOARD_RC)} {.addOnFailureListener Лог ( "Не удалось получить список лидеров: $ {(это, как ApiException) .statusCode}" )} В результате я следующее исключение: java.lang.NoClassDefFoundError: Failed разрешение: Lcom / Google / Android / г / общий / API / Api $ ZZF; в com.google.android.gms.games.Games. (Unknown Source) в com.google.android.gms.games.Games.getLeaderboardsClient (Unknown Source) в com.noktigula.swipeygame.activity.LeaderboardActivity.showLeaderboard (LeaderboardActivity. кт: 66) Любая помощь приветствуется! getLeaderboardIntent (ID) .addOnSuccessListener {startActivityForResult (это, LEADERBOARD_RC)} {.addOnFailureListener ложи ( "Не удалось получить лидеров: $ {(это как ApiException) .statusCode}")} В результате я за исключением следующего: java.lang.NoClassDefFoundError : Failed разрешение: Lcom / Google / Android / GMS / общие / API / Api $ ZZF; в com.google.android.gms.games.Games. (Unknown Source) в com.google.android.gms.games.Games.getLeaderboardsClient (Unknown Source) в com.noktigula.swipeygame.activity.LeaderboardActivity.showLeaderboard (LeaderboardActivity. кт: 66) Любая помощь приветствуется! getLeaderboardIntent (ID) .addOnSuccessListener {startActivityForResult (это, LEADERBOARD_RC)} {.addOnFailureListener ложи ( "Не удалось получить лидеров: $ {(это как ApiException) .statusCode}")} В результате я за исключением следующего: java.lang.NoClassDefFoundError : Failed разрешение: Lcom / Google / Android / GMS / общие / API / Api $ ZZF; в com.google.android.gms.games.Games. (Unknown Source) в com.google.android.gms.games.Games.getLeaderboardsClient (Unknown Source) в com.noktigula.swipeygame.activity.LeaderboardActivity.showLeaderboard (LeaderboardActivity. кт: 66) Любая помощь приветствуется! addOnFailureListener {ложи ( "Не удалось получить лидеров: $ {(это как ApiException) .statusCode}")} В результате я за исключением следующего: java.lang.NoClassDefFoundError: Failed разрешение: Lcom / Google / Android / GMS / общие / апи / Api $ ZZF; в com.google.android.gms.games.Games. (Unknown Source) в com.google.android.gms.games.Games.getLeaderboardsClient (Unknown Source) в com.noktigula.swipeygame.activity.LeaderboardActivity.showLeaderboard (LeaderboardActivity. кт: 66) Любая помощь приветствуется! addOnFailureListener {ложи ( "Не удалось получить лидеров: $ {(это как ApiException) .statusCode}")} В результате я за исключением следующего: java.lang.NoClassDefFoundError: Failed разрешение: Lcom / Google / Android / GMS / общие / апи / Api $ ZZF; в com.google.android.gms.games.Games. (Unknown Source) в com.google.android.gms.games.Games.getLeaderboardsClient (Unknown Source) в com.noktigula.swipeygame.activity.LeaderboardActivity.showLeaderboard (LeaderboardActivity. кт: 66) Любая помощь приветствуется!
noktigula
1

голосов
1

ответ
141

Просмотры

Как я могу сделать Google конечных точек API для использования проверки подлинности Firebase?

Я создал очень простой REST API на вершине удивительной библиотеки конечных точек-прото-датастора, которая опирается на конечные точки v1.0.0, включенных в Google Cloud Встроенный сторонних библиотек. Этот API служит данные угловому 6 приложения. Я настроил проверку подлинности Firebase / Angularfire, а также. Теперь, когда я пытаюсь аутентификация вызовов API с использованием Firebase следуя пример в документации, я не могу использовать Firebase «Эмитент» объект требуется, так как он не доступен в конечных точках v1.0.0. Кажется, решение обновить конечные точки, которые я делаю для 4.3.0 (последняя на сегодняшний день, я также попытался v2, v3). Когда я запускаю мое приложение, то API не принимает вызовы в / _ah / СПИ больше: ValueError: Invalid путь запроса: /_ah/spi/BackendService.getApiConfigs Любая идея, что я делаю неправильно?
Miki
1

голосов
0

ответ
120

Просмотры

Firebase Auth на Web - Как добавить защиту от спама для электронной почты / пароль Войти

Для моего сайта, я хочу создать свою собственную регистрационную форму для электронной почты / пароля на основе аутентификации с использованием Firebase аутентификации вместо использования FirebaseUI Web. Я буду использовать функцию createUserWithEmailAndPassword JS для создания новых учетных записей пользователей. Но как я могу предотвратить регистрацию спам? Обычно для веб-форм на основе, я хотел бы использовать Google ReCaptcha и проверить ReCaptcha на моем сервере. Но здесь, я не использую свой сервер для создания учетных записей пользователей. Я делаю вызов на стороне клиента для создания учетных записей пользователей. Конечно, я буду использовать проверку электронной почты в потоке, но как бы я предотвратить боты создания счетов в первую очередь? Я также понимаю, что Firebase имеет какое-то предел для числа запросов в минуту с одного IP, но я хотел бы пойти дальше и попытаться предотвратить эти регистрации. firebase.auth (). createUserWithEmailAndPassword (адрес электронной почты, пароль) .catch (функция (ошибка) {// Обработка ошибок здесь вар ERRORCODE = error.code;. вар ErrorMessage = Error.message; // ...}); Благодарю.
DFB
1

голосов
1

ответ
190

Просмотры

App сбой при обновлении номера телефона в Firebase-Unity Auth

Я реализую способ изменить подписанный в номере телефона пользователя. Для этого, во-первых, я называю PhoneAuthProvider.VerifyPhoneNumber, чтобы получить SMS с кодом. Затем я использую код, чтобы получить удостоверение с PhoneAuthProvider.GetCredential. Все отлично работает до этого момента. Когда я звоню FirebaseUser.UpdatePhoneNumberCredentialAsync, наконец, обновить телефон, приложение аварий. Номер на самом деле получить обновляется в Firebase, но этот метод терпит крах, прежде чем он закончил. Я делаю что-то неправильно, или это ошибка Firebase-Unity? Следит журнал ошибок из LogCat. (Имя файла: ./Runtime/Export/Debug.bindings.h Line: 43) 07-06 21: 01: 03,776 2375-2412 /? W / BiChannelGoogleApi: [FirebaseAuth:] getGoogleApiForMethod () возвращается GMS: [email protected] 07-06 21: 01: 05,597 2375-2536 /? D / FirebaseAuth: Уведомлять идентификаторов лексем слушателей о пользователе (fVZUcEX80zWZIzD5xU8cIhSloVi1). 07-06 21: 01: 05,597 2375-2375 /? D / FirebaseApp: Уведомлять AUTH состояния слушателей. 07-06 21: 01: 05,598 2375-2375 /? Д / FirebaseApp: Заявленный 0 аутентификации состояния слушателей. 07-06 21: 01: 05,599 2375-2375 /? E / firebase: результат = nullptr 07-06 21: 01: 05,610 20205-30810 /? Вт / FirebaseAuth: [PhoneNumberAuthPostProcessor] постобработка начинается 07-06 21: 01: 05,693 2375-2375 /? А / зиготы: java_vm_ext.cc:504] JNI обнаруженная ошибка в применении: не может назвать com.google.firebase.auth.FirebaseUser com.google.firebase.auth.AuthResult.getUser () на нулевой объект java_vm_ext.cc:504 ] в вызове CallObjectMethodV java_vm_ext.cc:504] из пустоты com.google.firebase.app.internal.cpp.JniResultCallback.nativeOnResult (java.lang.Object, логическое, INT, java.lang.String, длинный, длинный) java_vm_ext .cc: 504] " Зигота $ MethodAndArgsCaller.run (Zygote.java:327) java_vm_ext.cc:504] на com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1374) java_vm_ext.cc:504] runtime.cc:516] Продолжительность прерывание ... runtime.cc:516] runtime.cc:524] JNI ОБНАРУЖЕНА ОШИБКА в ПРИМЕНЕНИИ: не может вызвать com.google.firebase.auth.FirebaseUser com.google.firebase.auth.AuthResult.getUser () на нуле объект runtime.cc:524] в вызове CallObjectMethodV runtime.cc:524] из пустоты com.google.firebase.app.internal.cpp.JniResultCallback.nativeOnResult (java.lang.Object, логическое, INT, java.lang.String , длинный, длинный) runtime.cc:524] "главный" PRIO = 5 TID = 1 Runnable runtime.cc:524] | группа = "Основные" sCount = 0 dsCount = 0 флаги = 0 OBJ = 0x736004d8 само = 0xe85f5000 runtime.cc: 524] | sysTid = 2375 = -10 хорошо КГП = по умолчанию SCHED = 0/0 ручки = 0xecbba4bc runtime.cc:524] | состояние = R schedstat = (6746232415 788335286 4198) UTM = 547 = 126 STM ядро ​​= 7 Гц = 100 runtime.cc:524] | стек = 0xff162000-0xff164000 STACKSIZE = 8MB runtime.cc:524] | провел мьютексы = "мутатор замок" (совместно провели) runtime.cc:524] Уроженец: # 00 шт 002c4a4b /system/lib/libart.so (_ZN3art15DumpNativeStackERNSt3__113basic_ostreamIcNS0_11char_traitsIcEEEEiP12BacktraceMapPKcPNS_9ArtMethodEPv + 130) runtime.cc:524] Уроженец: # 01 шт 003560a1 / система /lib/libart.so (_ZNK3art6Thread9DumpStackERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEEbP12BacktraceMapb + 200) runtime.cc:524] уроженец: # 02 шт 00352573 /system/lib/libart.so (_ZNK3art6Thread4DumpERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEEbP12BacktraceMapb + 34) runtime.cc:524] родной: так (_ZN3art8CheckJNI17CallObjectMethodVEP7_JNIEnvP8_jobjectP10_jmethodIDSt9__va_list + 38) runtime.cc:524] Уроженец: # 09 шт 000b0513 /data/app/com.company.product-muqASgSszT-5GC-bGDgKRQ==/lib/arm/libApp-4.5.2.so (_ZN7_JNIEnv16CallObjectMethodEP8_jobjectP10_jmethodIDz +18) runtime.cc:524] уроженец: # 10 шт 000c5d6b /data/app/com.company.product-muqASgSszT-5GC-bGDgKRQ==/lib/arm/libApp-4.5.2.so (_ZN8firebase4auth16ReadSignInResultEP8_jobjectPNS0_18FutureCallbackDataEbPv + 46) runtime.cc:524] родной: # 11 шт 000c5cad /data/app/com.company.product-muqASgSszT-5GC-bGDgKRQ==/lib/arm/libApp-4.5.2.so (_ZN8firebase4auth14FutureCallbackEP7_JNIEnvP8_jobjectbiPKcPv + 120) 07-06 21: 01: 05.695 2375-2375 /? A / зиготы: runtime.cc:524] родной: # 12 шт 000cf0fd /data/app/com.company.product-muqASgSszT-5GC-bGDgKRQ==/lib/arm/libApp-4.5.2. 524] в com.google.android.gms.tasks.zzj.run (недоступен: -1) runtime.cc:524] - заблокирован (а java.lang.Object) runtime.cc:524] в android.os.Handler .handleCallback (Handler.java:789) runtime.cc:524] на android.os.Handler.dispatchMessage (Handler.java:98) runtime.cc:524] на android.os.Looper.loop (Looper.java:164 ) runtime.cc:524] на android.app.ActivityThread.main (ActivityThread.java:6938) runtime.cc:524] в java.lang.reflect.Method.invoke (Родной метод) runtime.cc:524] на ком .android.internal.os.Zygote $ MethodAndArgsCaller.run (Zygote.java:327) runtime.cc:524] на com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1374) runtime.cc:524] 07-06 21: 01: 05,846 2563-2563 /? A / DEBUG: Прервать сообщение: «java_vm_ext.cc:504] JNI ОБНАРУЖЕН ОШИБКА В ПРИМЕНЕНИИ: не может вызвать com.google.firebase.auth. FirebaseUser com.google.firebase.auth.AuthResult.getUser () на нулевой объект»r0 00000000 00000947 r1 r2 r3 00000006 00000008 00000947 r4 r5 00000947 r6 ff95d790 r7 0000010c r8 0000000b г9 ff95d7f1 сл 0000000a Ф.П. ff95d7f0 ф 00000000 зр ff95d780 Л.Р. e9f6e447 шт e9f9f508 CPSR 200d0010 07-06 21: 01: 05,856 2563-2563 /? A / DEBUG: # 04 шт 003ef7ad /system/lib/libart.so (_ZN7android4base10LogMessageD1Ev + 456) # 05 шт 00230143 /system/lib/libart.so (_ZN3art9JavaVMExt8JniAbortEPKcS2_ + 1262) # 06 шт 0023032b /system/lib/libart.so (_ZN3art9JavaVMExt9JniAbortVEPKcS2_St9__va_list + 58) # 07 шт 000d280b /system/lib/libart.so (_ZN3art11ScopedCheck6AbortFEPKcz + 46) # 08 шт 000d56a9 / система / Библиотека / libart. Продукт-muqASgSszT-5GC-bGDgKRQ == / Библиотека / рука / libApp-4.5.2.so (_ZN8firebase4auth14FutureCallbackEP7_JNIEnvP8_jobjectbiPKcPv + 120) # 14 шт 000cf0fd /data/app/com.company.product-muqASgSszT-5GC-bGDgKRQ==/lib /arm/libApp-4.5.2.so (_ZN8firebase4util32JniResultCallback_nativeOnResultEP7_JNIEnvP8_jobjectS4_hiP8_jstringxx + 116) # 15 шт 000002c5 /data/data/com.company.product/cache/oat/arm/app_resources_lib.odex (смещение 0x2000) 07-06 21:01: 17,397 20205-21357 /? E / FirebaseAuth: [VerifyPhoneNumberOperation] RemoteException при отправке автоматического извлечения ответа тайм-аута. android.os.DeadObjectException на android.os.BinderProxy.transactNative (Native Method) в android.os.BinderProxy.transact (Binder.java:761) в car.c (: com.google.android.gms @ 12685025 @ 12.6. 85 (040408-197041431): 1) на bebh.c (: com.google.android. 398 20205-21357 /? Вт / FirebaseAuth: [PhoneVerificationSession] PhoneVerificationSession концевыми 07-06 21: 01: 17.420 20205-28403 /? Вт / FirebaseAuth: [PhoneNumberAuthPostProcessor] постобработка заканчивается 07-06 21: 01: 17.433 20205-30810 /? W / FirebaseAuth: [PhoneNumberAuthPostProcessor] постобработки концы И метод я использую: общественного недействительными UpdatePhoneNumber (строка smsCode, действие OnUpdatePhoneFinish) {debug.log ( "КОД:" + smsCode); если (m_signupData! = NULL) {m_signupData.Credetial = PhoneAuthProvider.GetInstance (m_firebaseAuth) .GetCredential (m_signupData.Id, smsCode); Debug.log ( "CREDENTIAL:" + m_signupData.Credetial); // не работает нормально до этого момента m_firebaseUser.UpdatePhoneNumberCredentialAsync (m_signupData.Credetial) .ContinueWith ((задача) => {debug.log (»
1

голосов
0

ответ
105

Просмотры

Ионная проверка 3 формы не работает, когда нажим страница в функции onAuthStateChanged (firebase)

[Обновление] просто использовать работу authState.It для меня конструктор (общественный afAuth: AngularFireAuth, общественный navCtrl: NavController,) {this.afAuth.authState.subscribe (пользователь => {если (пользователь) {console.log ( 'Добро пожаловать') } еще {this.navCtrl.push (LoginPage)}})} Я использую ionic3 и firebase Когда я перейти на страницу входа в функции onAuthStateChanged (firebase). Моя форма Validate в странице входа не работает. Только работа, когда переходить от OutSite этой функции. home.ts экспорт класс HomePage {конструктор (общественный afAuth: AngularFireAuth, общественный navCtrl: NavController,)! {this.afAuth.auth.onAuthStateChanged (пользователь => {если (пользователь) {this.navCtrl.push (LoginPage}})} } авторизоваться. ц экспорт класса LoginPage {LoginForm: FormGroup; Конструктор (публичное alertCtrl: AlertController, общественный FB: FormBuilder, общественный navCtrl: NavController, общественный afAuth: AngularFireAuth, общественные navParams: NavParams) {this.createForm ()} CreateForm () {this.loginForm = this.fb.group ({ ' пользователь ': ['», Validators.compose ([Validators.required]),], 'проход': [ '', Validators.compose ([Validators.required])],}); } ShowAlert () {сопз предупреждение = this.alertCtrl.create ({название: 'Что-то не так', подзаголовок: 'Неправильный адрес электронной почты или пароль', кнопки: [ 'OK']}); alert.present (); } Логин () {если (this.loginForm.valid) {вар имя пользователя = this.loginForm.get ( 'пользователь').
Jimmy hendrix
1

голосов
1

ответ
24

Просмотры

Firebase: Вы можете сделать по электронной почте для сброса пароля установить электронную почту проверить флаг?

Я заметил, что после того, как пользователь получает по электронной почте для сброса пароля и сбрасывает свой пароль, электронная почта проверяется флаг на счете пользователя является неизменным. Может ли это поведение можно изменить? Я считаю такое поведение запутанным, как если пользователь изменяет пароль они, очевидно, подтвердили, что они находятся в управлении учетной записи электронной почты.
fstr
1

голосов
1

ответ
157

Просмотры

Anonymous Auth Firebase генерирует новый UserID в редакторе Unity

В старых API-х годов, был метод: FirebaseApp.DefaultInstance.SetEditorAuthUserId (SystemInfo.deviceUniqueIdentifier); В новом API, нет такого метода. Каждый раз, когда я называю auth.SignInAnonymouslyAsync (), я получаю новую запись входа в систему, с новым, случайно сгенерированных ID. Является ли это только в редакторе? Если да, то как обойти это?
Spectre

Просмотр дополнительных вопросов

Связанные вопросы