Flutter: !!! FAILED BINDER TRANSACTION !!!という表示が出てAdMob広告が表示されない

※当サイトは、アフィリエイト広告を利用しています

結論:Androidエミュレーターを「Cold Boot Now」で再起動する

2023/5/24 Flutter エラー・バグ日記

 

Androidエミュレーター(API 33、Pixel4)でビルドしたら、コンソールに以下のエラー表示が出た。

 

E/JavaBinder( ####): !!! FAILED BINDER TRANSACTION !!! (parcel size = 412)
W/GmsClient( ####): IGmsServiceBroker.getService failed
android.os.DeadObjectException: Transaction failed on small parcel; remote process probably died, but this could also be caused by running out of binder buffe
・・・(略)・・・

 

アプリがクラッシュすることはないが、実装しているAdMobの広告が表示されなくなっている。

 

本番、テスト広告、いずれで試しても表示されない。

 

本記事はライトな日記思考で書いているので、詳細説明はしておらず、基本、テキストのみで画像とかはあまり載せておりません。。m(_ _)m

解説記事ではないため、解決していない内容や、その時々の間違った解釈を述べてしまっている可能性が大いにありますので、何卒、ご了承ください。

 

実機やiOSでは発生しない

Androidの実機やiOSのシミュレーターでテストすると、このエラーは表示されず、広告も問題なく表示される。

 

そのため、実装コードは問題なさそうで、Androidエミュレーターの問題ということになりそう。

 

通信時のバッファ容量不足が原因?

エラーメッセージを見ると、

 

  • トランザクションが失敗した
  • バインダーバッファの不足が原因である可能性がある

 

といったコメントがある。

 

何となく、AdMobの広告を受信しようとしたが、容量オーバーしたような印象。。

 

バインダーバッファ(binder buffer)が何なのか?は、Androidの公式ドキュメントを探しても、明確に見つけられなかったが、下記のような記事を参考にさせていただくと、つまるところ、Androidが通信をする際に設けられているバッファ(緩衝領域)があり、その容量には一定の制限があるらしい。。(全く理解が違っているかもしれないが、、)

 

 

 

同じ現象を報告するイシューが上がっていた

ネット上で、エラーメッセージを検索すると、全く同じ状況について、イシューが上がっていた。

 

 

やり取りを拝見すると、やはりAndroidエミュレーターの問題らしく、結論としては、Android StudioのDevice Managerで、

 

  • Wipe Data もしくは、
  • Cold Boot Now

 

のいずれかを実行すれば解消する模様。

 

Wipe Dataは、エミュレーター内のデータが消えるだけでなく、設定が全て初期化されてしまうので、できれば避けたい。

 

そのため、いったんエミュレーターを落として「Cold Boot Now」で再起動し、改めてビルドしたところ、確かにエラーは発生せず、広告も表示されるようになった。

 

しかし、アプリを閉じて、そのままもう一度ビルドすると、また同じエラーが発生する状況に戻ってしまう。

 

前述のイシュ−にも、「Cold Bootすると、いったん解消するが、また発生する」という報告があるので、それと同じ状況らしい。

 

ただ、大した手間ではないので、ビルドする度に、Cold Bootを繰り返していたところ、いつの間にかエラーが発生しなくなった^^;。

 

表示していたAdMobの広告は、常にテスト広告だったので、送られてくるデータ容量が減った訳ではないように思える。

 

根本解決はできていないかもしれないが、これ以上、調査するのも時間を浪費しそうなので、、また発生した場合は、Cold Bootで対処しようと思う。

 

\一般的なエラー対処法をまとめた記事はこちら/

 

リリースしたアプリ(全てFlutterで開発)

 

個人アプリ開発で役立ったもの

おすすめの学習教材

超初心者向けでオススメな元Udemyの講座/

 

 \キャンペーン時を狙えば安価で網羅的な内容が学べる(日本語訳あり)/

 

\Gitの基礎について無料で学べる/

 

おすすめの学習書籍

実用的image_pickerに関してかなり助けられた/

 

Dartの基礎文法を素早くインプットできる/


Dart入門 - Dartの要点をつかむためのクイックツアー

 

タイトルとURLをコピーしました