Android 只需要为移动设备设置纵向

Android 只需要为移动设备设置纵向,android,android-layout,kotlin,screen-orientation,Android,Android Layout,Kotlin,Screen Orientation,我尝试使用以下代码 if (screenLayoutSize == Configuration.SCREENLAYOUT_SIZE_SMALL || screenLayoutSize == Configuration.SCREENLAYOUT_SIZE_NORMAL) { requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT } 代码运行良好。成功构建 但是,req

我尝试使用以下代码

        if (screenLayoutSize == Configuration.SCREENLAYOUT_SIZE_SMALL || screenLayoutSize == Configuration.SCREENLAYOUT_SIZE_NORMAL) {
            requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT
        }
代码运行良好。成功构建

但是,
requestedOrientation
上有一个错误,它说“您不应该锁定活动的方向,这样您就可以为任何设备或方向提供良好的用户体验。”


我怎样才能弄清楚,或者保持现状可以吗?

这是一个警告。到目前为止,可以保留它。也许他们会在studio的一些更高版本中强制改变这一点。为了获得良好的用户体验,建议不要锁定方向。

就像@Antonio所说的,这只是一个警告,你现在可以忽略它

只需在使用方向代码的函数上添加
@SuppressLint(“SourceLockedOrientationActivity”)
。i、 e-

@SuppressLint("SourceLockedOrientationActivity")
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    if (screenLayoutSize == Configuration.SCREENLAYOUT_SIZE_SMALL || screenLayoutSize == Configuration.SCREENLAYOUT_SIZE_NORMAL) {
            requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT
    }
}
您也可以通过在清单中使用
screenOrientation
属性来实现这一点,而无需使用此Java代码-

<activity android:name=".activities.MainActivity"
            android:screenOrientation="portrait"
            />


或者,如果您有任何CI检查此类内容,您可以按照工具提示的建议添加@suppresslint以使注释静音。它被检测为错误。不管怎样,解决这个问题的最佳方法是什么?解决这个问题的最佳方法是提供横向版本,并且不要锁定方向。现在有了这个错误,构建将成功,不会出现任何问题。但它提醒我们开始处理横向版本,在某个时间点,他们可能会强制执行。