Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/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 - Fatal编程技术网

Android数据_漫游和蓝牙_开启异常

Android数据_漫游和蓝牙_开启异常,android,Android,在Android上,我一直在尝试检索漫游和蓝牙的数据,看看它们是否被启用 我使用了以下方法: Cursor cursorCheck = getContentResolver().query( Settings.Global.CONTENT_URI, new String[]{Settings.Global.BLUETOOTH_ON}, null, null, null); assert

在Android上,我一直在尝试检索漫游和蓝牙的数据,看看它们是否被启用

我使用了以下方法:

Cursor cursorCheck = getContentResolver().query(
                Settings.Global.CONTENT_URI,
                new String[]{Settings.Global.BLUETOOTH_ON},
                null, null, null);
        assert cursorCheck != null;
        cursorCheck.moveToFirst();
        for (int i = 0; i < cursorCheck.getCount(); i++) {
            Log.i("check1", cursorCheck.getString(0) + " ");
            cursorCheck.moveToNext();
        }
        cursorCheck.close();
Cursor cursorCheck=getContentResolver().query(
Settings.Global.CONTENT\u URI,
新字符串[]{Settings.Global.BLUETOOTH_ON},
空,空,空);
断言游标检查!=无效的
cursorCheck.moveToFirst();
对于(int i=0;i
但是,我得到以下例外情况:

“java.lang.IllegalArgumentException:无效列:蓝牙开启”/“java.lang.IllegalArgumentException:无效列:数据漫游”

网址:


谢谢

您的代码中的问题是
设置.Global.BLUETOOTH\u ON
不是列的名称,列的名称是
名称
BLUETOOTH\u ON
是该列中的值,因此当您进行如下查询时:

 Cursor cursorCheck = getContentResolver().query(
                Settings.Global.CONTENT_URI,
                null,
               "name=?", new String[]{"bluetooth_on"}, null);
这将使用
bluetooth\u on
值搜索名称列,并获取结果

对于多个添加
或像这样的
name=?或name=?
并向字符串数组添加您想要的值

要使蓝牙处于开-关状态,请使用:

cursorCheck.getString(2)

享受吧

谢谢,但我得到的值不是0或1,我得到的数字如29,这意味着什么?尝试将
cursorCheck.getString(0)
更改为其他值,如1,2,也许你会这样做get@EliorCohen使用cursorCheck.getString(2)这将为您提供正确的答案,但是“name=?或name=?”不起作用,为什么?我得到:由:java.lang.IllegalArgumentException:支持的SQL:uri引起content://some_table/some_property 使用空where和where args uricontent://some_table 查询名称=?和单个名称作为arg uricontent://some_table 使用query name=some_name和null参数,但得到-uri:content://settings/global,其中:name=?或名称=?wherergs:[数据漫游,蓝牙开启]需要获取两个值时使用它