Не удается суммировать данные в MIT App Inventor 2 - PullRequest
0 голосов
/ 30 апреля 2018

enter image description here

Поэтому, когда я пытаюсь суммировать переменную Consum с Test (полученной от bluetooth), синий блок не разрешает такую ​​операцию. Если это в обычной программе кодирования, это будет:

Consume = Consume + Test;

Любая помощь?

Ответы [ 2 ]

0 голосов
/ 27 июля 2018

Вот что App Inventor говорит о функции «Получить текст»:

Получение текста с подключенного устройства Bluetooth. Если numberOfBytes меньше 0, считывайте, пока не будет получено значение байта разделителя.

Эта функция получает байты от компонента Bluetooth и возвращает текст, который нельзя добавить, если текст не является числом. Если вы посмотрите на сообщение об ошибке, которое вы получите, оно должно сказать вам, что вы добавляете строку и число. Вы также могли бы использовать опцию Do It в эмуляторе или компаньоне, чтобы увидеть результат, который выводит процедура Receive Text.

Вот пример правильного способа использования этого блока: Вы должны установить тестовую переменную для байтов, доступных для приема, а затем удалить все доступные байты, используя текст получения с доступными байтами.

0 голосов
/ 30 апреля 2018

Вы можете добавить данные, только если данные доступны
поэтому в Clock.Timer event добавьте еще один оператор if, подобный этому

if BluetoothClient1.BytesAvailableToReceive > 0
then...
...