无法在横向使用 Intent 打开相机

Can't open Camera using Intent in landscape orientation

我正在开发 Android 捕获图像并将这些图像上传到服务器的应用程序。 我用intent打开相机:

val cameraIntent = Intent(MediaStore.ACTION_IMAGE_CAPTURE)

我需要横向打开相机,我试过这个方法,没有任何改变

cameraIntent.putExtra(MediaStore.EXTRA_SCREEN_ORIENTATION, ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE)

有什么建议吗

相机应用的行为取决于相机应用的开发者。 pre-installed 和 user-installed 都有数百个相机应用程序。 EXTRA_SCREEN_ORIENTATION 没有被记录为 ACTION_IMAGE_CAPTURE 协议的一部分,而且我不知道有任何相机应用程序会遵守它。 任何 相机应用都不需要让呼叫者强制屏幕方向。

您可以集成相机库(来自 Google 的 CameraX,等等)并直接在您的应用中自行拍照。然后,您将能够控制屏幕的方向(例如,通过清单中的 android:screenOrientation)。