从 Cordova CLI 进行构建时,我希望能够控制 AndroidManifest.xml 文件中的“supports-screens”元素。
具体来说,我想在 AndroidManifest.xml 中控制以下元素:
<supports-screens android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"
android:resizeable="true"
android:smallScreens="true"
android:xlargeScreens="true" />
理想情况下,我希望 Cordova config.xml 文件中有一个可用的设置,可以让我直接控制支持的屏幕尺寸。
我尝试过使用 config.xml 设置,但无济于事:
<platform name="android">
<supports-screen xlargeScreens="false"/>
</platform>
我知道我可以在我的源代码控制中存储一个自定义的 AndroidManfiest.xml 文件,然后使用 Cordova 钩子(Hook)简单地复制它,但是这样做感觉有点笨拙,我担心 future 对 config.xml 的调整然后文件可能不会进入 AndroidManifest.xml,因为我们忘记了在 after_prepare Hook 期间我们正在覆盖生成的文件。
使用 Cordova CLI 可以实现我的要求吗?如果是这样,将不胜感激 config.xml 的示例来实现这一点。
最佳答案
自从 this change in the latest cordova > 6.3 versions ,我们应该可以使用新的 edit-config
标签来编辑 Android Manifest.mf 文件,如下所示:
<edit-config file="AndroidManifest.xml" target="/manifest/supports-screens" mode="merge">
<supports-screens android:resizeable=["true"| "false"]
android:smallScreens=["true" | "false"]
android:normalScreens=["true" | "false"]
android:largeScreens=["true" | "false"]
android:xlargeScreens=["true" | "false"]
android:anyDensity=["true" | "false"]
android:requiresSmallestWidthDp="integer"
android:compatibleWidthLimitDp="integer"
android:largestWidthLimitDp="integer"/>
</edit-config>
您还需要将 xmlns:android="http://schemas.android.com/apk/res/android"
添加到 config.xml 中的小部件元素。
更多信息 there和 there
关于android - 我可以从我的 Cordova config.xml 控制 AndroidManifest.xml 文件的 <supports-screen> 设置吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30202559/