有没有更好的方法来提取内部类的值?

时间:2019-09-10 10:27:54

标签: android class kotlin

我的第一个内部类是“ getPosition” ,该类更新设备的位置并将信息写入csv文件中。 我的第二个内部类是“ ConnectedThread” ,该类连续监听蓝牙obd设备并将信息写入csv文件中。

如何将两者信息合并到一个 CSV文件?

  1. 使用一个内部类的所有代码(位置和obd)?
  2. 让另一个类传递字符串数据,并在接收到两个数据后在同一行中写入?
private inner class ConnectedThread() : Thread() {

        init {
            rpmCommand = RPMCommand ()
        }

        override fun run() {
            while (!Thread.currentThread().isInterrupted) {
            val rpm = rpmCommand.run(mmInStream,mmOutStream)
            val row = listOf(
                            rpm
                        )
                        csvWriter().open(Environment.getExternalStorageDirectory().absolutePath + File.separator + csvFilename) {
                            writeRow(row)

            }
        }
private inner class getPosition(
        googleMap: GoogleMap,
        filename: String
    ) : Thread() {

        init {
            mMap = googleMap
            mMap.uiSettings.isZoomControlsEnabled = true
        }

        override fun run() {
                    val currentLatLng = LatLng(location.latitude, location.longitude)
                    mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(currentLatLng, 12f))

val timeStamp: String = SimpleDateFormat("ddMMyyyy_HHmmss").format(Date())
                        locationData.timeStamp = timeStamp
                        locationData.lat = location.latitude
                        locationData.lon = location.longitude

                        val row = listOf(
                            timeStamp,
                            locationData.lon,
                            locationData.lat
                        )
                        csvWriter().open(Environment.getExternalStorageDirectory().absolutePath + File.separator + csvFilename) {
                            writeRow(row)
                            println("position data is added")
                        }
                    }
                }
            }

0 个答案:

没有答案