Android用Qtの環境変数
回避策の有効化または無効化
Qt for Android では、特定の回避策を有効または無効にするために、いくつかの環境変数を使用します:
よく使用される変数
| 変数 | 説明 |
|---|---|
| QT_ANDROID_NO_EXIT_CALL | 場合によっては、Androidアプリがexit() を呼び出す際にすべてのスレッドを安全にクリーンアップできず、クラッシュすることがあります。これは、C++スレッドが実行中であり、これらをjoinせずに破棄するとアプリケーションが終了してしまうためです。これらのスレッドは、実行中かどうかを判断できないため、joinすることができません。 このフラグを指定すると、exit() の呼び出しを回避し、Androidシステムにこの処理を任せることができます。その代償として、グローバルデストラクタの実行は試みられなくなります。 |
| QT_ANDROID_ENABLE_WORKAROUND_TO_DISABLE_PREDICTIVE_TEXT | 主にパスワード入力フィールドから、予測入力の候補を非表示にすることができます。一部のデバイスでは、これが正しく処理されない場合があります。詳細については、「予測入力」を参照してください。 |
| QT_ANDROID_ENABLE_RIGHT_MOUSE_FROM_LONG_PRESS | 長押しをマウスの右クリックイベントとして解釈します。 |
| QT_ANDROID_DISABLE_ACCESSIBILITY | アクセシビリティを無効にします。これにより、アクセシビリティイベントの処理が阻止されます。 |
| QT_ANDROID_NO_FULLSCREEN_KEYBOARD | Android がフルスクリーン IME を表示することを許可しません。 注:この変数は、 Qt 6.8.8、6.11.1、6.12 以降でのみ有効です。Qt 6.12 以降では、代わりに `Qt::ImhNoFullscreen ` を使用することを推奨します。 |
あまり使用されない変数
| 変数 | 説明 |
|---|---|
| QT_ANDROID_FONT_LOCATION | システムフォントのカスタムパスを設定します。 |
| QT_ANDROID_MAX_ASSETS_CACHE_SIZE | assets フォルダ内のアセットのキャッシュサイズ。 |
| QT_ANDROID_DISABLE_GLYPH_CACHE_WORKAROUND | 「テキストグリフのキャッシュ」を参照 |
| QT_ANDROID_RASTER_IMAGE_DEPTH | |
| QT_ANDROID_MINIMUM_MOUSE_DOUBLE_CLICK_DISTANCE | |
| QT_ANDROID_BACKGROUND_ACTIONS_QUEUE_SIZE | Android アプリが一時停止または非アクティブ状態にある場合でも、BroadcastReceiver や Service などのコンポーネントから UI の更新を受け取り続けることがあります。これらの更新は、アプリが再開されるまでキューに蓄積されます。キューは無限に膨れ上がる可能性があり、アプリが再びアクティブになった際にこれらの更新を処理する際、余分なメモリ使用量や遅延を引き起こす原因となります。 この環境変数は、キューのサイズ制限を導入することでこの問題に対処します。指定された制限に達すると、最新のエントリを追加するために最も古いエントリが破棄されるため、無制限な増加が防止されます。デフォルトでは、キューは制限がなく、この環境変数は設定されていません。また、負の数値に設定した場合も、キューは制限なしのままとなります。 たとえば、QT_ANDROID_BACKGROUND_ACTIONS_QUEUE_SIZE=100 と設定すると、キューは 100 個のアクションに制限されます。 |
注: これらは関連していますが 、Qt for Android で使用される CMake コマンドや変数とは異なります。詳細は「Qt for Android の CMake 設定」を参照してください。
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.