目前,我的设备将USB串行适配器连接到打印机。我正在寻找如何通过串口发送数据到打印机" / dev / ttyUSB0"但我得到错误"操作不被允许"从调用chmod()。这是要求获得打开端口许可的电话,因为如果我没有请求许可,我会得到“拒绝接入”#34;从调用Open()。
我们说我的端口是" / dev / ttyUSB0"并且权限是将数据发送到端口。
以下是对chmod()的调用。感谢。
JNIEXPORT jint JNICALL Java_com_example_testserialport_ExecuteTest_RequestPermission(JNIEnv *env, jobject obj, jstring port)
{
LOGI("entering RequestPermission()");
int retVal = 0;
mode_t permission = S_IWUSR;//request to write to port
jboolean iscopy;
const char *path_utf = (*env)->GetStringUTFChars(env, port, &iscopy);
retVal = chmod(path_utf, permission);
if(retVal == -1)
{
LOGE("inside RequestPermission()- chmod() failed");
LOGE("inside RequestPermission()- chmod()- errno=%s", strerror(errno));
return -1;
}
LOGI(ANDROID_LOG_INFO, TAG, "exiting RequestPermission()");
return 0;
}