如何使用PhoneGap + Cordova在Android应用程序中启用横向和纵向模式

How to enable both landscape and portrait mode in Android app using PhoneGap + Cordova

本文关键字:横向 启用 模式 应用程序 PhoneGap 何使用 Cordova Android      更新时间:2023-09-26

>我正在尝试使用PhoneGap + Cordova在Android应用程序中启用横向和纵向模式

使用 PhoneGap + Cordova+JavaScript

问题:只有肖像模式即将到来。当将屏幕从纵向旋转到横向应用程序停止时。

JavaScript:

<script type="text/javascript">
    document.addEventListener("deviceready", getLocation, false);
    $(function() {
        getLocation();
    });
    var lat = 0;
    var lng = 0;
    function getLocation() {
        navigator.geolocation.getCurrentPosition(onSuccess, onError, { enableHighAccuracy: true });
    }
    function onSuccess(position) {
        lat = position.coords.latitude;
        lng = position.coords.longitude;
        alert('Lattitude: ' + lat + ' Longitude: ' + lng);
    }
    function onError(error) {
        alert('code: ' + error.code + ''n' +
              'message: ' + error.message + ''n');
    }
</script>

安卓清单.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.staplelogic.rideshare"
    android:versionCode="1"
    android:versionName="1.0" >
    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="21" />
    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".MainActivity"
            android:label="@string/app_name"
            android:configChanges="orientation|keyboardHidden" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity 
            android:name="org.apache.cordova.DroidGap" 
            android:label="@string/app_name"
            android:configChanges="orientation|keyboardHidden"> 
            <intent-filter></intent-filter>
        </activity>
    </application>
    <supports-screens 
        android:largeScreens="true" 
        android:normalScreens="true" 
        android:smallScreens="true" 
        android:resizeable="true" 
        android:anyDensity="true" />
        <uses-permission 
            android:name="android.permission.CAMERA" />
        <uses-permission android:name="android.permission.VIBRATE" /> 
        <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
        <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
        <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
        <uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" />
        <uses-permission android:name="android.permission.READ_PHONE_STATE" />
        <uses-permission android:name="android.permission.INTERNET" /> 
        <uses-permission android:name="android.permission.RECEIVE_SMS" />
        <uses-permission android:name="android.permission.RECORD_AUDIO" /> 
        <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> 
        <uses-permission android:name="android.permission.READ_CONTACTS" /> 
        <uses-permission android:name="android.permission.WRITE_CONTACTS" /> 
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
        <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
        <uses-permission android:name="android.permission.GET_ACCOUNTS" />
        <uses-permission android:name="android.permission.BROADCAST_STICKY" />
</manifest>

screenSize添加到AnroidManifest.xml中每个活动中的android:configChanges

喜欢这个:

android:configChanges="orientation|screenSize|keyboardHidden"

参考