LoginSignup
8
2

Supabaseでローカル開発する際にAndroid Emulatorの通信エラーが発生した

Posted at

はじめに

Supabaseとは、Firebaseの代替を謳っていてモバイル・Webなどのアプリ開発に伴う充実したサービスを提供してくれるSaasとなります。

また、本筋からずれてしまうため省略しますが、Supabaseの優れた機能の中の1つとしてLocal環境が簡単に構築できる機能があります。

今回の問題

Supabaseはクライアントで利用する際、以下のような初期化処理を行います。

  await Supabase.initialize(
    url: 'https://domain.com:54321,
    anonKey: 'xxxxxxxxxx,
  );

今回、このローカル開発をする中でiOSでは正常にSupabaseにアクセスできるのにAndroidだとアクセスできない事象が発生していました。

もちろん、Androidのネットワーク設定は完了しています。

解決法

今回、たまたまSupabaseを用いていましたがSupabaseが起因というより、PCのlocalhostはAndroid Emulatorからアクセスできないため別のURLを指定しないといけないのです。

そのため、Supabase.initializeをする際に指定するURLはそれぞれ以下のようにしてください。

Before

💡 Supabaseのローカルは以下のURLで基本的にアクセスします

http://localhost:54321

After

iOS

http://127.0.0.1:54321

Android

http://10.0.2.2:54321

以上です。
ネットワーク設定含め、初回しかしないし忘れがちなので備忘録として記載しました。

8
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
2