【Android】Foldエミュレーターでチカチカ表示される
SDK35(Android 15以上)対応にあたり、AndroidStudioでFoldを持っていないのでエミュレーターを使ってアプリがどう表示されるか確認していようとしました(ちなみに開発機はMacです)。
メイン端末iPhoneだすし、開発機のためにFold高くて買えないよ。
で、いざ立ち上げると、縦横チカチカ切り替わったり、縦長横長にチカチカ切り替わったりして使えない。
壊れかけのモニターみたいな。
作り直しても駄目なので、てっとり早くご存知ChatGPTにきいてみた。
諸々きいていくとコマンドを紹介された。
せっかくなので試してみました。以下、試したコマンド
(パスが通ってないと駄目です)
emulator @Pixel_Fold_API_35_Android15_ -no-snapshot -wipe-data -gpu swiftshader_indirect
オプション解説
-no-snapshot
スナップショット機能を使わずに起動するオプションです。
通常、エミュレーターは終了時に状態(RAM、ストレージ)をスナップショットに保存し、次回起動を高速化します。
これを無効にすることで「毎回クリーン起動」になります。
-wipe-data
エミュレーターのユーザーデータを初期化(工場出荷状態にリセット)してから起動します。
一度アプリを削除して再インストールしたのと同じ状態にしたいときに便利です。
-gpu swiftshader_indirect
GPU のレンダリング方式を指定するオプションです。
swiftshader_indirect は CPU 上で動作するソフトウェアレンダラー(SwiftShader)を使う設定。
実機の GPU を使わず、互換性を優先した動作モードです。
グラフィックは遅くなりますが、環境依存の OpenGL/Vulkan エラー回避に役立ちます。
実際試したら普通に表示されました。
今度はコマンドからではなく、AndroidStudioから起動。
こちらも普通に表示。なんかうまくいきました。
多分コマンド起動時につけたオプションがなにか良い効果を表したのでしょう。
動いた喜びもさることながら、動作の不具合も見つかりちょっと凹んだ。
どう直せばいいんだ、SDK35!!edge to edge!!