我正在使用AngularJS 1.5,Ionic 1和Cordova CLI 8编写应用程序。
我正在使用cordova-camera插件拍照。我的应用是仅纵向的。不支持横向。
用户拍照后,整个应用程序会暂时进入横向模式。它解决了自己,但看上去很担心。如何防止这种情况发生?
"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
};
答案 0 :(得分:0)
在您的相机配置中,设置了correctOrientation: true
,这可能是问题所在,因为文档说它将纠正设备的方向。请更改为false
。
您还应该使用以下代码将屏幕orientation
锁定在config.xml中
<preference name="orientation" value="portrait" />
如果问题仍然存在,则可以安装cordova-plugin-screen-orientation
插件并锁定方向。
cordova plugin add cordova-plugin-screen-orientation
该插件将以下内容添加到屏幕对象(window.screen)
// lock the device orientation
.orientation.lock('portrait')
// unlock the orientation
.orientation.unlock()
// current orientation
.orientation