Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/204.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.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
Android-打开蓝牙设置,但在另一个视图中_Android_Android Settings - Fatal编程技术网

Android-打开蓝牙设置,但在另一个视图中

Android-打开蓝牙设置,但在另一个视图中,android,android-settings,Android,Android Settings,我知道以编程方式打开蓝牙设置 我是这样做的: Intent intentOpenBluetoothSettings = new Intent(); intentOpenBluetoothSettings.setAction(android.provider.Settings.ACTION_BLUETOOTH_SETTINGS); startActivity(intentOpenBluetoothSettings); 但这样做会让我在同一视图/应用程序中进入蓝牙设置页面 如果我想在应用程序之

我知道以编程方式打开蓝牙设置

我是这样做的:

Intent intentOpenBluetoothSettings = new Intent();
intentOpenBluetoothSettings.setAction(android.provider.Settings.ACTION_BLUETOOTH_SETTINGS); 
startActivity(intentOpenBluetoothSettings); 
但这样做会让我在同一视图/应用程序中进入蓝牙设置页面

如果我想在应用程序之外的另一个视图/窗口/页面中打开蓝牙设置页面,我该如何操作

我希望这样做的原因是,用户不会混淆设置页面和我的应用程序

谢谢

更新

我尝试了
intentoPenbleouthSettings.addFlags(Intent.FLAG\u ACTIVITY\u NEW\u TASK)


但在另一个视图中打开它却没有运气

有两种请求启用蓝牙的方式:

intentOpenBluetoothSettings.setAction(android.provider.Settings.ACTION_BLUETOOTH_SETTINGS);


如果它们都不适合你的需要,那么你可能会重新考虑你的想法。

我建议你读一读关于android活动生命周期和Backback的内容

您的应用中未运行设置。 但通常情况下,你开始做的每件事都是背靠背的。 所以,如果你从你的应用程序转到其他应用程序(设置),android会记住这一点。 您的应用程序未被销毁,但仅设置为暂停(调用onPause)

如果您关闭设置,它将返回到您的应用程序,并删除Backback上的设置条目。我想这不是问题所在

但如果你不关闭设置,然后通过某种方式尝试再次启动你的应用程序,它不会被破坏,而是被唤醒(没有onCreate,只有onResume)。Android将检查你的应用程序当前是否加载了设置,设置将再次显示

如果您重新启动应用程序的目的是您可以控制(如从服务) 你可以:

该标志将终止backbackback,直到您的应用程序位于堆栈顶部,这样您的应用程序将启动,无论之前是否启动过设置。
Backback未完全清除,因此如果您的应用程序是由另一个应用程序启动的,您可以在按下back按钮时返回到该应用程序。

您希望更改哪些设置?更好的选择可能是显示启用蓝牙的对话框,然后在应用程序中进行活动,在其中搜索设备并连接到它们。我想让用户转到蓝牙设置页面,以便他们连接到蓝牙。但是我希望设置页面在我的应用程序之外。谢谢。“但是这样做会让我在同一视图/应用程序中进入蓝牙设置页面。”这是不正确的。看^^^^所以这是不可能的@OnikBluetooth设置是在其专用进程中打开的,而不是在应用程序的进程中打开的。我尝试了第一个。打开蓝牙设置页面没有问题。它很好用。但我想让它在我的应用程序之外的另一个视图中打开。谢谢
intentOpenBluetoothSettings.setAction(BluetoothAdapter.ACTION_REQUEST_ENABLE);
startMyAppIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);