如何"Change Screen Orientation Settings of whole device"?
How to "Change Screen Orientation Settings of whole device"?
我想在我的应用程序中将 android 设备的屏幕方向设置从任何模式更改为“自动旋转”。此更改不仅适用于我的应用程序,而且适用于整个设备。我也有“Root 访问权限”,但如果没有 root 访问权限也能实现这一点,那就更好了。 Playstore 中已经有像“Rotation Control”这样的应用程序可以执行此操作,但我不知道它是如何工作的,我只获得了在应用程序级别更改屏幕方向的文档和教程,但我需要设备级别。所以至少请指导我一点,否则任何想法都会有所帮助。
在清单中设置方向权限:
android:configChanges="orientation"
然后通过调用 setRequestedOrientation
:
启用方向
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED);
你可以使用这样的东西
public static void setAutoOrientationEnabled(Context context, boolean enabled)
{
Settings.System.putInt( context.getContentResolver(),
Settings.System.ACCELEROMETER_ROTATION, enabled ? 1 : 0);
}
不要忘记添加权限
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
更多详情请看this
我想在我的应用程序中将 android 设备的屏幕方向设置从任何模式更改为“自动旋转”。此更改不仅适用于我的应用程序,而且适用于整个设备。我也有“Root 访问权限”,但如果没有 root 访问权限也能实现这一点,那就更好了。 Playstore 中已经有像“Rotation Control”这样的应用程序可以执行此操作,但我不知道它是如何工作的,我只获得了在应用程序级别更改屏幕方向的文档和教程,但我需要设备级别。所以至少请指导我一点,否则任何想法都会有所帮助。
在清单中设置方向权限:
android:configChanges="orientation"
然后通过调用 setRequestedOrientation
:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED);
你可以使用这样的东西
public static void setAutoOrientationEnabled(Context context, boolean enabled)
{
Settings.System.putInt( context.getContentResolver(),
Settings.System.ACCELEROMETER_ROTATION, enabled ? 1 : 0);
}
不要忘记添加权限
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
更多详情请看this