【发布时间】:2020-06-19 07:55:33
【问题描述】:
我正在设计一个应用程序,如果在智能手机上运行,它的方向应该固定在纵向,或者在平板电脑上固定在横向。
所以我试图在 gradle 文件上使用清单占位符,以便在应用程序的清单上设置 screenOrientation 属性。问题是,我无法验证 gradle 文件的屏幕大小。有没有办法检查它是否是 build.gradle 上的平板电脑?或者也许我可以通过不同的方式获得相同的结果?
我尝试的另一件事是使用从带有 sw600dp 限定符的资源文件中获取的布尔资源。但是 android studio 给出了一个错误,说它不能引用因 manifest 文件中的配置而异的资源。
代码:
AndroidManiefst.xml ...
<activity
...
android:screenOrientation="${fixedOrientation}">
build.gradle
android {
def portrait = 'portrait'
def landscape = 'landscape'
...
manifestPlaceholders.fixedOrientation = "$landscape"
}
fixedOrientation 目前是静态的,我想让它动态化。
【问题讨论】:
-
"有没有办法检查它是否是 build.gradle 上的平板电脑?" - 不。
build.gradle在您的开发机器上。它提供了为所有设备构建应用的说明。 -
@CommonsWare 您能否详细说明您的评论作为答案,以便我标记为正确?如果需要,我会创建一个新问题。
标签: android android-studio gradle kotlin android-gradle-plugin