简体   繁体   中英

How to use bufferedreader.readLine in kivy?

Im using kivy + bluetooth socket.

while I'm receiving data from bluetooth, the bufferedreader.read() method works. But bufferedreader.readLine() method won't work..

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添加结束标签

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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