Невозможно читать/записывать последовательный порт с помощью flutter_libserialport. показывает мне: SerialPortError: РазAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Невозможно читать/записывать последовательный порт с помощью flutter_libserialport. показывает мне: SerialPortError: Раз

Сообщение Anonymous »

Я пытаюсь запустить свое приложение Flutter, которое подключается к устройству Android (разрешить любые разрешения, запрошенные приложением) и разрешить запись и чтение через последовательный порт.
Я использую устройство Android Последняя версия, я пробовал с Linux, она прекрасно читает и пишет. но когда я запускаю его в Android, он говорит: SerialPortError: Разрешение отклонено, errno = 13, я пытался предоставить все разрешения в моем androidManifest, но не нашел решения. Кроме того, дайте моему устройству Android примитив принять все разрешения, но проблема остается той же. Я попробовал использовать чип с помощью Arduino, и он отправляет сообщения, но на моем устройстве Android заметки работают!
Пожалуйста, помогите
void operateSerialPort() {
List availblePort = SerialPort.availablePorts;

print('availble port: $availblePort');

SerialPort port1 = SerialPort('/dev/ttyS0'); //,115200 //ttyS1 ///dev/ttyUSB0

print(
'the port property:\n bus number:${port1.busNumber}, device number:${port1.deviceNumber}\n, product id:${port1.productId}, product name:${port1.productName} ,serial number:${port1.serialNumber},\n vendor id:${port1.vendorId}, signals:${port1.signals}, bytesAvailable:${port1.bytesAvailable}, ');

print('is port1 open? ${port1.isOpen}');
port1.openReadWrite();
print('is port1 open (afteropen)? ${port1.isOpen}');
if (!port1.openReadWrite()) {
print('error opening port: ${port1}');
}

if (!port1.open(mode: SerialPortMode.readWrite)) {
print(
'Error in opning read/write: port> $port1 serial last error> ${SerialPort.lastError}');
//close port
port1.close();
port1.dispose();
return;
}
var config = inirPort(port1);

if (port1.config != config) {
print('Error: configuration does not applied => ${port1}');
return;
}

if (port1.isOpen) {
print('port is open');
} else {
print('port is Closed!, ${port1}');
port1.close();
port1.dispose();
}

print('hey0');

try {
//write:
print('hey1');
var convertString = _stringToUni8List('hello');
print('hey2');
var write = port1.write(convertString);

print('writen bytes is ${write}');

//read:
SerialPortReader reader = SerialPortReader(port1);
print('heyy5');

Stream upcommingData = reader.stream.map((data) {
return String.fromCharCodes(data);
});

//listen for upcomming data:
upcommingData.listen((value) {
print('Read Data: $value');
});
} on SerialPort catch (err, _) {
print('Error on: ${SerialPort.lastError}');
port1.close();
}
}

SerialPortConfig inirPort(SerialPort port) {
var configure = port.config = SerialPortConfig()
// var configure = SerialPortConfig()
//// SerialPortDtr.flowControl
..baudRate = 115200
..parity = SerialPortFlowControl.none
..stopBits = 1
..bits = 8
// ..flowControl = SerialPortFlowControl.rtsCts
// ..rtsControl = SerialPortRtsControl.on
// ..rts = SerialPortRts.on
..rts = SerialPortRts.on
..dtr = SerialPortDtr.on
..rts = SerialPortRts.flowControl //0
..dtr = SerialPortDtr.flowControl
..cts = 1
..dsr = 1
..cts = SerialPortCts.flowControl
..dsr = SerialPortDsr.flowControl
..xonXoff = SerialPortXonXoff.inOut //enabled for input and output.
..setFlowControl(SerialPortFlowControl.rtsCts); //SerialPortFlowControl.none

return configure;
}


Подробнее здесь: https://stackoverflow.com/questions/786 ... erialporte
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»