QTP0002
Android 固有のパスを指定するターゲット・プロパティは、ジェネレータ式を含むことができます。
このポリシーは Qt 6.6 で導入されました。これは、Android 固有のパスを指定するターゲット プロパティの処理を変更します:
- qt_qml_import_path
- qt_qml_import_path
- qt_android_package_source_dir
- qt_android_extra_plugins
- qt_android_extra_libs
このポリシーのOLD
動作は、ターゲットプロパティでAndroid固有のパスを指定するジェネレータ式を許可しませんが、指定されたパスを有効なJSON文字列に暗黙的に変換します。
このポリシーのNEW
動作では、Android 固有のパスを指定するターゲット プロパティでジェネレーター式を使用できますが、有効な JSON 文字列として評価される必要があります。
QT_ANDROID_EXTRA_PLUGINSプロパティの次の値は、ポリシーを OLD に設定すると有効な JSON 文字列に変換されますが、ポリシーを NEW に設定するとエラーになります:
set_target_properties( QT_ANDROID_EXTRA_PLUGINS "\\path\\to\\MyPlugin.so" )
上記の例でポリシーがNEWに設定されている場合、デプロイメント設定ファイルの結果のJSON文字列には、パス区切り文字の代わりにエスケープされた記号が含まれます。
ジェネレータ式はポリシーが NEW に設定されている場合にのみサポートされるため、OLD の動作では、次のコードを含む不正な配置設定ファイルが生成されます:
set_target_properties( QT_ANDROID_EXTRA_PLUGINS "$<TARGET_FILE_DIR:MyPlugin>" )
このプロパティ値は、OLD ポリシー値と NEW ポリシー値の両方で期待どおりに動作します:
set_target_properties( QT_ANDROID_EXTRA_PLUGINS "/path/to/MyPlugin.so" )
注: ポリシーのOLD
の動作は非推奨であり、将来的に削除される可能性があります。
qt_policyとQt CMake ポリシーも参照してください 。
©2024 The Qt Company Ltd. 本文書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。