我创建了一个Qt/QML应用程序并将其移植到Android上。现在我可以在Android设备上运行该应用程序了。我想将方向模式固定为Landscape。
我手动编辑了AndroidManifest.xml
并将android:screenOrientation="unspecified"
设置为android:screenOrientation="sensorLandscape"
<activity
android:configChanges="orientation|uiMode|screenLayout|screenSize|smallestScreenSize|layoutDirection|locale|fontScale|keyboard|keyboardHidden|navigation"
android:name="org.qtproject.qt5.android.bindings.QtActivity"
android:label="Engage"
android:screenOrientation="sensorLandscape"
android:launchMode="singleTop">
每次部署项目时,清单都会被覆盖并重置为android:screenOrientation="unspecified"
3条答案
按热度按时间wpx232ag1#
我有个解决办法。
在您的项目文件夹中添加一个文件夹。我命名为“android-sources”。从android-build复制您的
AndroidManifest.xml
并粘贴到“android-sources”文件夹。打开.pro文件并添加以下内容然后打开
AndroidManifest.xml
改变方向
xcitsw882#
在Qt Forum上,建议使用以下解决方案:
只需进入项目,运行,点击详细信息并创建androidmanifest.xml,选择一个目录。之后,如果它没有自动发生,将其添加到您的项目并编辑它。第4行应该如下所示:
只需将“未指定”更改为“sensorLandscape”并保存即可。
它不会在每次部署时被覆盖。
jecbmhm33#
我遇到了和你一样的问题,最后我找到了这个问题的解决方案。按照以下步骤:
1.选择项目〉构建〉构建Android APK〉创建模板。
1.检查Android包源目录中的路径。
1.如果您计划扩展Qt应用程序的Java部分,请选择将Gradle文件复制到Android目录
1.选择Finish将模板文件复制到android目录并打开manifest文件进行编辑。
1.在屏幕方向字段中选择“SensorLandscape”。