我正在使用Bluez-5.43,并使用dbus API。org.bluez.GattCharacteristic1 WriteValue方法
当尝试使用WriteValue方法如下误差值写入特征出现:
GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: Method "WriteValue" with signature "ay" on interface "org.bluez.GattCharacteristic1" doesn't exist.
我应该心存感激,如果有人能帮我解决这个问题:)
这是代码,导致此问题:
GVariant *char_value = g_variant_new_from_data(G_VARIANT_TYPE ("ay"), buffer, *buffer_len, TRUE, NULL, NULL);
if (char_value == NULL){
printf("converting value error\n");
return -1;
}
else{
printf("converting value succeed\n");
g_dbus_proxy_call_sync (char_write_proxy, "WriteValue", g_variant_new ("(@ay)", char_value), G_DBUS_CALL_FLAGS_NONE, -1, NULL, &error);
printf("lign 154\n");
if (error != NULL){
printf("write failed: %s\n", error->message);
return -1;
}
else
break;
}
}
你的代码在哪里产生这个问题? –
你应该张贴在你的文章 –