Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 蓝牙可发现性请求和屏幕方向_Java_Android_Bluetooth - Fatal编程技术网

Java 蓝牙可发现性请求和屏幕方向

Java 蓝牙可发现性请求和屏幕方向,java,android,bluetooth,Java,Android,Bluetooth,使用以下代码段询问用户是否有权打开可发现的设备 final Intent intent = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE); startActivityForResult(intent, BT_REQUEST); 当我的呼叫活动处于横向模式时,导致以下系统对话框以纵向模式显示,这不是一种良好的用户体验 我在Play Store尝试的许多只支持横向蓝牙的应用程序似乎也遇到了同样的问题 有没有办法强制对话框以横向

使用以下代码段询问用户是否有权打开可发现的设备

final Intent intent = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE);

startActivityForResult(intent, BT_REQUEST);
当我的呼叫活动处于横向模式时,导致以下系统对话框以纵向模式显示,这不是一种良好的用户体验

我在Play Store尝试的许多只支持横向蓝牙的应用程序似乎也遇到了同样的问题

有没有办法强制对话框以横向模式显示

我试图从清单中覆盖系统活动方向,但没有成功

<activity android:name="com.android.settings.bluetooth.RequestPermissionActivity"
                        android:screenOrientation="landscape" />


我认为,您可以使用intent启动另一个应用程序,这使得无法使用scape。因此,也许你可以在你的应用程序中创建一个确认警报对话框,并从对话框中自动发送蓝牙适配器正选择或负选择。出于安全原因,我认为这是不可能的。请查看ifeegoo对此问题的回答。但正如您所说,ifeegoo指出,如果您使用enable()方法,安全性可能会阻止打开蓝牙。我认为,您使用intent启动另一个应用程序,这使得无法使用scape。因此,也许你可以在你的应用程序中创建一个确认警报对话框,并从对话框中自动发送蓝牙适配器正选择或负选择。出于安全原因,我认为这是不可能的。请查看ifeegoo对此问题的回答。但正如您所说,ifeegoo指出,如果您使用enable()方法,安全性可能会阻止打开蓝牙。