当前位置: 首页 > 知识库问答 >
问题:

cordova摄像头插件-插件使应用程序在拍照后进入肖像模式

周宏伯
2023-03-14

我正在使用AngularJS 1.5、Ionic 1和Cordova CLI 8编写一个应用程序。

我正在使用cordova摄像头插件拍照。我的应用程序仅为肖像。不支持横向。

用户拍照后,整个应用程序暂时进入横向模式。它自己解决了,但看起来很担心。我如何防止这种情况发生?

"cordova-android": "^8.0.0"
"cordova-plugin-camera": "^4.0.3"

Ionic:

ionic (Ionic CLI) : 4.12.0 (C:\Program Files\nodejs\node_modules\ionic)
Ionic Framework : ionic1 1.3.5
@ionic/v1-toolkit : 1.0.22

Cordova:

cordova (Cordova CLI) : 8.1.2 (cordova-lib@8.1.1)
Cordova Platforms : android 8.0.0
Cordova Plugins : no whitelisted plugins (15 plugins total)

System:

Android SDK Tools : 26.1.1 (C:\Users\aubrey\Documents\AndroidSDK)
NodeJS : v8.16.0 (C:\Program Files\nodejs\node.exe)
npm : 6.4.1
OS : Windows 10

cordova requirements

Requirements check results for android:
Java JDK: installed 1.8.0
Android SDK: installed true
Android target: installed android-28
Gradle: installed C:\Users\XYZ\Documents\Android\gradle\gradle-5.3.1\bin\gradle

编辑:我正在将这些选项传递到相机插件中:

    var options = {
        targetWidth: 150,
        targetHeight: 150,
        quality: 50,
        destinationType: Camera.DestinationType.DATA_URL,
        sourceType: Camera.PictureSourceType.CAMERA,
        allowEdit: false,
        encodingType: Camera.EncodingType.JPEG,
        popoverOptions: CameraPopoverOptions,
        saveToPhotoAlbum: false,
        correctOrientation: true
    };

共有1个答案

伍皓
2023-03-14

在相机配置中,设置了校正方向:true,这可能是问题所在,因为医生说它会校正设备方向。请将其更改为false。

您还应该使用以下代码锁定屏幕方向config.xml

<preference name="orientation" value="portrait" />

如果问题仍然存在,您可以安装cordova插件屏幕方向并锁定方向。

cordova插件添加cordova插件屏幕方向

插件将以下内容添加到屏幕对象(window.screen)

// lock the device orientation
.orientation.lock('portrait')

// unlock the orientation
.orientation.unlock()

// current orientation
.orientation
 类似资料:
  • 我正在开发一个web应用程序,它可以浏览和拍摄本地照片,我还想通过相机拍摄图像。我使用下面的代码,我可以捕捉设备摄像头。 现在,我想获得图像和onchangeevent,转换为base64,并希望在该页面中显示。 好心帮我伙计们!

  • 我一直在尝试使用Androidintent和intent来拍照或挑选照片。我遇到的问题是,当我尝试在肖像模式下使用Android photo intent拍照时,它会以横向方式保存。 我正试图从URI字符串中保存正确定向照片的

  • 所以我遇到了一个问题,前面在我提问的问题中提到过:将图像(ACTION_image_CAPTURE)上载到Firebase存储 我对这个问题进行了更多的搜索,并应用了Android Studio文档:https://developer.android.com/training/camera/photobasics.html#TaskPhotoView 所以,在您阅读代码之前,我基本上想说一下需要什

  • 我使用的是cordova 7.0.1版和cordova插件摄像机2.4.1版。getPicture(成功函数、失败函数、选项)在选项中,我使用 我得到的图像URI是正确的。我创建了一个“img”元素,并将img.src设置为插件返回的URI,图片显示正确。现在,我将这个URI存储在应用程序的本地文件夹中,并关闭应用程序。我重启应用程序,并从存储中读取imageURI。然后,我创建一个“img”元素

  • 我按照这个旋转捕获的图像。但我有一个错误。 我的代码 LogCat错误 这是236号线 我怎样才能解决这个问题?我从中找到了很多解决方案,但我仍然不知道如何解决它。有人能帮我解决这个问题吗?任何帮助都会很好,谢谢!!

  • 伙计们。我面对的是这个相机版本。它发生在我合并我的项目之后。它说没有相机可用,但那时它运行良好。请看看! 请看看这个错误信息,并在这方面提供帮助。我期待着收到你们所有人的来信。提前谢谢你。