Flutter

Flutter+Firebaseで電話番号認証に失敗?エミュレーターを変更してみた

とあるプロジェクトに関わることになりまして、FlutterのUI部分を作ることになりました。

Reactやvue、Firebaseを自在に操り、Nodeもごりごり書けて、しごとも早いし、頭も超いいし、アンテナも広いし、なんかいろいろごいすーな凄腕エンジニアさんが書いたFlutterのコードをいただいたので拝読しているのですが

な、何が書いてあるか全くわからん・・・さっぱりわからん..読めぬ...ぐぬぬ

これから頑張って解読します。勉強させていただます。gitもろくに操れなくてすんません!

ということで、さっそくプロジェクトを起動してみました。

想定される動作としては

  • テキストボックスに電話番号を入力
  • 認証コード取得ボタンをクリック
  • Googleの例の画像を選択するロボット画面が表示される
  • ログイン画面に戻り認証コードを入れる
  • ログインボタンをクリックするとログインできる

という動きなのですが、実際は

  • テキストボックスに電話番号を入力
  • 認証コード取得ボタンをクリック

で、Googleの画像選択する画面がでてこず、ログイン画面に戻ってしまう。

あれこれと1時間半悩み、エミュレーターを iPad Pro → iPad に変更したら、期待通りの動きになりました。

機種によって違うのかなぁ🤔

ちょうど、↓前回も参加していたこちらのもくもく会に、参加しながら作業していたので、症状を相談したところ

第4回Flutterもくもく会@Zoom

エミュレーター自体にキャッシュやセッションを持っているからじゃないかなーとのこと(はじめの1回目にテスト用の電話番号を失敗して入力してたのでした・・)。エミュレーターのアプリを削除してみたらとアドバイスをいただきました。

アドバイス通り、Pro11でアプリを削除し、再度起動。

今度はログイン画面をすっとばして、表示したい画面に飛びました。

おぉ・・

ログインがすっ飛ばされたのは、Fiirebaseでログイン情報をもったままだからじゃないかなぁーもしかしてだけど・・とのこと。

なるほどー

エミュレーターの知識もまったくないので、また知見が増えました。ありがとうございました。

もくもく会では、テストの書き方とか、FirebaseAnalyticsのこととか、他の人がこまっていることも聞けて大変参考になりました。

Flutterがんばるぞ。

 

来週は、Goの輪読会に参加するのでそちらの予習もしなければー。こちらの感想もまたUPしたいと思います。

-Flutter