简体   繁体   English

如何在Kivy中使用bufferedReader.readLine?

[英]How to use bufferedreader.readLine in kivy?

Im using kivy + bluetooth socket. 我正在使用kivy +蓝牙插座。

while I'm receiving data from bluetooth, the bufferedreader.read() method works. 当我从蓝牙接收数据时,bufferedreader.read()方法有效。 But bufferedreader.readLine() method won't work.. 但是bufferedreader.readLine()方法不起作用。

def change_data(self):
        Logger.info('Im in the change_data!!')
        self.data = 'change_data'

        paired_devices = BluetoothAdapter.getDefaultAdapter().getBondedDevices().toArray()
        if BluetoothAdapter.isEnabled() == False:
            Logger.info('bluetooth not turned on')
            PythonActivity.mActivity.startActivityForResult(Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE), 200)
        else:
            pass
        for device in paired_devices:
            self.data = str(device.getName())
            Logger.info('Im in the loop!!'+str(device))
            if device.getName() == 'HC-06':

                self.socket = device.createRfcommSocketToServiceRecord(UUID.fromString('00001101-0000-1000-8000-00805F9B34FB'))

                break
        if self.socket == None:
            pass
        else:
            self.data = 'connecting'
            self.socket.connect()
def read(self,dt):
        self.recv = BufferedReader(InputStreamReader(self.socket.getInputStream()))
        self.data =self.recv.read()
def start(self):
        self.change_data()
        Clock.schedule_interval(self.read,1)

readLine读取IO需要以\\ r \\ n结尾的数据,蓝牙发送数据需要以\\ r \\ n添加结束标签

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM