🐕

Facebook Auth の公式リファレンスが普通にミスってるっぽいので注意して。

2023/01/23に公開

Q. Flutterを扱う際に、iOSとAndroidどちらでビルドすることが多いですか?

A. 圧倒的にiOSです。

さて、今回はFacebook認証で躓いたというか
おいおいおい、公式パッケージがミスっとるやないかって話をします。

とりあえず、下記がエラー文章です↓

Error文
FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:processDebugResources'.
> A failure occurred while executing com.android.build.gradle.internal.res.LinkApplicationAndroidResourcesTask$TaskAction
   > Android resource linking failed
     ERROR:/.../facebook_auth_test/build/app/intermediates/packaged_manifests/debug/AndroidManifest.xml:100: AAPT: error: resource string/app_name (aka com.example.facebook_auth_test:string/app_name) not found.


* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 2m 11s
Exception: Gradle task assembleDebug failed with exit code 1

まぁ、普通に読み解ける人は普通に何の問題もないでしょうが、
僕の場合は、Androidビルドをほぼやらないので普通に恐怖を感じていました。

ただ、中身的に見ると、not foundって書いているので
あぁ、多分何かのファイルかコードが無いんだろうなって感じで解き進めました。

原因は、app_nameって書いてますが、
FBの初期設定に下記を入れる必要がある箇所があります。

<string name="facebook_app_id">1234</string>
<string name="fb_login_protocol_scheme">fb1234</string>
<string name="facebook_client_token">56789</string>

参考画像↓

で、ここから分かるように、app_nameなんて文字はありません。
ということで、自分で入れる必要があるみたいでした。

ということで、下記のようにして完了。

<string name="app_name">facebook_auth_test</string>
<string name="facebook_app_id">1234</string>
<string name="fb_login_protocol_scheme">fb1234</string>
<string name="facebook_client_token">56789</string>

終わり。

Discussion