diff --git a/app/src/main/java/com/casic/br/utils/LocaleConstant.kt b/app/src/main/java/com/casic/br/utils/LocaleConstant.kt index e9ceee9..dde5f22 100644 --- a/app/src/main/java/com/casic/br/utils/LocaleConstant.kt +++ b/app/src/main/java/com/casic/br/utils/LocaleConstant.kt @@ -35,11 +35,6 @@ val T_H_PAGE_TITLE = arrayOf("温度记录", "湿度记录") val CONNECT_IMAGE = intArrayOf(R.drawable.ic_kefu, R.drawable.ic_weixiu) val CONNECT_ARRAY = arrayOf("客服电话", "抢修电话") - val ROBOT_FUNCTION_ARRAY = arrayOf("自动清扫", "定点清扫", "沿边打扫", "自动回充", "寻回", "定时", "清扫记录", "设置") - val ROBOT_FUNCTION_IMAGE = intArrayOf( - R.drawable.ic_kefu, R.drawable.ic_kefu, R.drawable.ic_kefu, R.drawable.ic_kefu, - R.drawable.ic_kefu, R.drawable.ic_kefu, R.drawable.ic_kefu, R.drawable.ic_kefu - ) //TODO 模拟数据 val TEST_IMAGE = intArrayOf( diff --git a/app/src/main/java/com/casic/br/utils/LocaleConstant.kt b/app/src/main/java/com/casic/br/utils/LocaleConstant.kt index e9ceee9..dde5f22 100644 --- a/app/src/main/java/com/casic/br/utils/LocaleConstant.kt +++ b/app/src/main/java/com/casic/br/utils/LocaleConstant.kt @@ -35,11 +35,6 @@ val T_H_PAGE_TITLE = arrayOf("温度记录", "湿度记录") val CONNECT_IMAGE = intArrayOf(R.drawable.ic_kefu, R.drawable.ic_weixiu) val CONNECT_ARRAY = arrayOf("客服电话", "抢修电话") - val ROBOT_FUNCTION_ARRAY = arrayOf("自动清扫", "定点清扫", "沿边打扫", "自动回充", "寻回", "定时", "清扫记录", "设置") - val ROBOT_FUNCTION_IMAGE = intArrayOf( - R.drawable.ic_kefu, R.drawable.ic_kefu, R.drawable.ic_kefu, R.drawable.ic_kefu, - R.drawable.ic_kefu, R.drawable.ic_kefu, R.drawable.ic_kefu, R.drawable.ic_kefu - ) //TODO 模拟数据 val TEST_IMAGE = intArrayOf( diff --git a/app/src/main/java/com/casic/br/view/LoginActivity.kt b/app/src/main/java/com/casic/br/view/LoginActivity.kt index 2c9d9bd..978a9d2 100644 --- a/app/src/main/java/com/casic/br/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/br/view/LoginActivity.kt @@ -20,8 +20,6 @@ import com.tuya.smart.android.user.bean.User import com.tuya.smart.home.sdk.TuyaHomeSdk import kotlinx.android.synthetic.main.activity_login.* -import kotlinx.android.synthetic.main.activity_login.userPhoneView -import kotlinx.android.synthetic.main.activity_register.* class LoginActivity : KotlinBaseActivity() { @@ -36,6 +34,9 @@ } override fun initData() { + userPhoneView.setText(SaveKeyValues.getValue(LocaleConstant.ACCOUNT, "") as String) + passwordView.setText(SaveKeyValues.getValue(LocaleConstant.PASSWORD, "") as String) + authenticateViewModel = ViewModelProvider(this)[AuthenticateViewModel::class.java] userViewModel = ViewModelProvider(this)[UserViewModel::class.java] } @@ -56,6 +57,8 @@ "请输入密码".show(this) return@setOnClickListener } + SaveKeyValues.putValue(LocaleConstant.ACCOUNT, userPhone) + SaveKeyValues.putValue(LocaleConstant.PASSWORD, userPassword) LoadingDialogHub.show(this, "登录中,请稍后") TuyaHomeSdk.getUserInstance().loginWithPhonePassword( diff --git a/app/src/main/java/com/casic/br/utils/LocaleConstant.kt b/app/src/main/java/com/casic/br/utils/LocaleConstant.kt index e9ceee9..dde5f22 100644 --- a/app/src/main/java/com/casic/br/utils/LocaleConstant.kt +++ b/app/src/main/java/com/casic/br/utils/LocaleConstant.kt @@ -35,11 +35,6 @@ val T_H_PAGE_TITLE = arrayOf("温度记录", "湿度记录") val CONNECT_IMAGE = intArrayOf(R.drawable.ic_kefu, R.drawable.ic_weixiu) val CONNECT_ARRAY = arrayOf("客服电话", "抢修电话") - val ROBOT_FUNCTION_ARRAY = arrayOf("自动清扫", "定点清扫", "沿边打扫", "自动回充", "寻回", "定时", "清扫记录", "设置") - val ROBOT_FUNCTION_IMAGE = intArrayOf( - R.drawable.ic_kefu, R.drawable.ic_kefu, R.drawable.ic_kefu, R.drawable.ic_kefu, - R.drawable.ic_kefu, R.drawable.ic_kefu, R.drawable.ic_kefu, R.drawable.ic_kefu - ) //TODO 模拟数据 val TEST_IMAGE = intArrayOf( diff --git a/app/src/main/java/com/casic/br/view/LoginActivity.kt b/app/src/main/java/com/casic/br/view/LoginActivity.kt index 2c9d9bd..978a9d2 100644 --- a/app/src/main/java/com/casic/br/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/br/view/LoginActivity.kt @@ -20,8 +20,6 @@ import com.tuya.smart.android.user.bean.User import com.tuya.smart.home.sdk.TuyaHomeSdk import kotlinx.android.synthetic.main.activity_login.* -import kotlinx.android.synthetic.main.activity_login.userPhoneView -import kotlinx.android.synthetic.main.activity_register.* class LoginActivity : KotlinBaseActivity() { @@ -36,6 +34,9 @@ } override fun initData() { + userPhoneView.setText(SaveKeyValues.getValue(LocaleConstant.ACCOUNT, "") as String) + passwordView.setText(SaveKeyValues.getValue(LocaleConstant.PASSWORD, "") as String) + authenticateViewModel = ViewModelProvider(this)[AuthenticateViewModel::class.java] userViewModel = ViewModelProvider(this)[UserViewModel::class.java] } @@ -56,6 +57,8 @@ "请输入密码".show(this) return@setOnClickListener } + SaveKeyValues.putValue(LocaleConstant.ACCOUNT, userPhone) + SaveKeyValues.putValue(LocaleConstant.PASSWORD, userPassword) LoadingDialogHub.show(this, "登录中,请稍后") TuyaHomeSdk.getUserInstance().loginWithPhonePassword( diff --git a/app/src/main/java/com/casic/br/view/device/SweepingRobotActivity.kt b/app/src/main/java/com/casic/br/view/device/SweepingRobotActivity.kt index 2abc2f3..a946830 100644 --- a/app/src/main/java/com/casic/br/view/device/SweepingRobotActivity.kt +++ b/app/src/main/java/com/casic/br/view/device/SweepingRobotActivity.kt @@ -5,11 +5,9 @@ import android.util.Log import com.alibaba.fastjson.JSONObject import com.casic.br.R -import com.casic.br.adapter.IconTextGridAdapter import com.casic.br.extensions.initLayoutImmersionBar import com.casic.br.extensions.toChineseTypeName import com.casic.br.utils.CommandManager -import com.casic.br.utils.LocaleConstant import com.casic.br.utils.TuyaDeviceListener import com.casic.br.view.device.robot.RobotSettingsActivity import com.gyf.immersionbar.ImmersionBar @@ -53,7 +51,6 @@ override fun initData() { val deviceId = intent.getStringExtra(Constant.INTENT_PARAM)!! - Log.d("Casic", "SweepingRobotActivity => initData: $deviceId") tuyaOTA = TuyaHomeSdk.newOTAInstance(deviceId) //控制设备前必须初始家庭化数据,每次 App 活跃期间,初始化一次即可。 deviceInstance = TuyaHomeSdk.newDeviceInstance(deviceId) @@ -71,47 +68,118 @@ val parseObject = JSONObject.parseObject(dpStr) parseObject.keys.forEach { when (it) { - "1" -> {} + "1" -> {//设备开关 + turnOffRadioButton.isChecked = parseObject[it] as Boolean + } + "11" -> { + //故障 + } + "14" -> { + //剩余电量 + batteryValueView.text = "${parseObject[it]}%" + } + "25" -> { + //Power on button + } + "26" -> { + //清扫方向 + + } + "27" -> { + //工作模式 + when (parseObject[it]) { + "0" -> turnOffRadioButton.isChecked = parseObject[it] as Boolean + "1" -> autoRadioButton.isChecked = true + "2" -> pointRadioButton.isChecked = true + "3" -> {} + "4" -> edgeRadioButton.isChecked = true + "5" -> rechargeRadioButton.isChecked = true + "6" -> {} + "7" -> {} + "8" -> {} + "9" -> {} + "10" -> {} + "11" -> {} + "12" -> {} + "13" -> {} + "14" -> {} + "15" -> {} + } + } + "29" -> { + //打扫速度 + } + "30" -> { + //工作状态 + workStateView.text = when (parseObject[it]) { + "1" -> "工作中" + "2" -> "停止中" + "3" -> "充电中" + "4" -> "找回充电" + "5" -> "休眠中" + "6" -> "报错中" + "7" -> "升级中" + "8" -> "寻回机器中" + "9" -> "功能演示中" + else -> "备用中" + } + } + "31" -> { + //UV灯 + } + "32" -> { + //语言包 + } + "33" -> { + //静音模式 + } + "34" -> { + //寻回 + } + "35" -> { + //机器时间同步 + } + "38" -> { + //清扫时间 + workingTimeView.text = "${parseObject[it]}'" + } + "43" -> { + //声音 + } + "44" -> { + //清扫强度 + } + "45" -> { + //清扫记录 + } + "46" -> { + //累计面积 + } + "47" -> { + //累计次数 + } + "48" -> { + //累计时间 + } + "49" -> { + //耗材使用 + } } } } }) - val robotGridAdapter = IconTextGridAdapter( - this, LocaleConstant.ROBOT_FUNCTION_IMAGE, LocaleConstant.ROBOT_FUNCTION_ARRAY - ) - functionRecyclerView.adapter = robotGridAdapter - robotGridAdapter.setOnGridItemClickListener(object : - IconTextGridAdapter.OnGridItemClickListener { - override fun onItemClick(position: Int) { - when (position) { - 0 -> { + timeConfigLayout.setOnClickListener { + "此功能待后续完善".show(context) + } - } - 1 -> { + cleanRecordLayout.setOnClickListener { + "此功能待后续完善".show(context) + } - } - 2 -> { - - } - 3 -> { - - } - 4 -> { - - } - 5 -> { - "此功能待后续完善".show(context) - } - 6 -> { - "此功能待后续完善".show(context) - } - 7 -> { - navigatePageTo() - } - } - } - }) + settingsLayout.setOnClickListener { + navigatePageTo() + } } override fun initEvent() { diff --git a/app/src/main/java/com/casic/br/utils/LocaleConstant.kt b/app/src/main/java/com/casic/br/utils/LocaleConstant.kt index e9ceee9..dde5f22 100644 --- a/app/src/main/java/com/casic/br/utils/LocaleConstant.kt +++ b/app/src/main/java/com/casic/br/utils/LocaleConstant.kt @@ -35,11 +35,6 @@ val T_H_PAGE_TITLE = arrayOf("温度记录", "湿度记录") val CONNECT_IMAGE = intArrayOf(R.drawable.ic_kefu, R.drawable.ic_weixiu) val CONNECT_ARRAY = arrayOf("客服电话", "抢修电话") - val ROBOT_FUNCTION_ARRAY = arrayOf("自动清扫", "定点清扫", "沿边打扫", "自动回充", "寻回", "定时", "清扫记录", "设置") - val ROBOT_FUNCTION_IMAGE = intArrayOf( - R.drawable.ic_kefu, R.drawable.ic_kefu, R.drawable.ic_kefu, R.drawable.ic_kefu, - R.drawable.ic_kefu, R.drawable.ic_kefu, R.drawable.ic_kefu, R.drawable.ic_kefu - ) //TODO 模拟数据 val TEST_IMAGE = intArrayOf( diff --git a/app/src/main/java/com/casic/br/view/LoginActivity.kt b/app/src/main/java/com/casic/br/view/LoginActivity.kt index 2c9d9bd..978a9d2 100644 --- a/app/src/main/java/com/casic/br/view/LoginActivity.kt +++ b/app/src/main/java/com/casic/br/view/LoginActivity.kt @@ -20,8 +20,6 @@ import com.tuya.smart.android.user.bean.User import com.tuya.smart.home.sdk.TuyaHomeSdk import kotlinx.android.synthetic.main.activity_login.* -import kotlinx.android.synthetic.main.activity_login.userPhoneView -import kotlinx.android.synthetic.main.activity_register.* class LoginActivity : KotlinBaseActivity() { @@ -36,6 +34,9 @@ } override fun initData() { + userPhoneView.setText(SaveKeyValues.getValue(LocaleConstant.ACCOUNT, "") as String) + passwordView.setText(SaveKeyValues.getValue(LocaleConstant.PASSWORD, "") as String) + authenticateViewModel = ViewModelProvider(this)[AuthenticateViewModel::class.java] userViewModel = ViewModelProvider(this)[UserViewModel::class.java] } @@ -56,6 +57,8 @@ "请输入密码".show(this) return@setOnClickListener } + SaveKeyValues.putValue(LocaleConstant.ACCOUNT, userPhone) + SaveKeyValues.putValue(LocaleConstant.PASSWORD, userPassword) LoadingDialogHub.show(this, "登录中,请稍后") TuyaHomeSdk.getUserInstance().loginWithPhonePassword( diff --git a/app/src/main/java/com/casic/br/view/device/SweepingRobotActivity.kt b/app/src/main/java/com/casic/br/view/device/SweepingRobotActivity.kt index 2abc2f3..a946830 100644 --- a/app/src/main/java/com/casic/br/view/device/SweepingRobotActivity.kt +++ b/app/src/main/java/com/casic/br/view/device/SweepingRobotActivity.kt @@ -5,11 +5,9 @@ import android.util.Log import com.alibaba.fastjson.JSONObject import com.casic.br.R -import com.casic.br.adapter.IconTextGridAdapter import com.casic.br.extensions.initLayoutImmersionBar import com.casic.br.extensions.toChineseTypeName import com.casic.br.utils.CommandManager -import com.casic.br.utils.LocaleConstant import com.casic.br.utils.TuyaDeviceListener import com.casic.br.view.device.robot.RobotSettingsActivity import com.gyf.immersionbar.ImmersionBar @@ -53,7 +51,6 @@ override fun initData() { val deviceId = intent.getStringExtra(Constant.INTENT_PARAM)!! - Log.d("Casic", "SweepingRobotActivity => initData: $deviceId") tuyaOTA = TuyaHomeSdk.newOTAInstance(deviceId) //控制设备前必须初始家庭化数据,每次 App 活跃期间,初始化一次即可。 deviceInstance = TuyaHomeSdk.newDeviceInstance(deviceId) @@ -71,47 +68,118 @@ val parseObject = JSONObject.parseObject(dpStr) parseObject.keys.forEach { when (it) { - "1" -> {} + "1" -> {//设备开关 + turnOffRadioButton.isChecked = parseObject[it] as Boolean + } + "11" -> { + //故障 + } + "14" -> { + //剩余电量 + batteryValueView.text = "${parseObject[it]}%" + } + "25" -> { + //Power on button + } + "26" -> { + //清扫方向 + + } + "27" -> { + //工作模式 + when (parseObject[it]) { + "0" -> turnOffRadioButton.isChecked = parseObject[it] as Boolean + "1" -> autoRadioButton.isChecked = true + "2" -> pointRadioButton.isChecked = true + "3" -> {} + "4" -> edgeRadioButton.isChecked = true + "5" -> rechargeRadioButton.isChecked = true + "6" -> {} + "7" -> {} + "8" -> {} + "9" -> {} + "10" -> {} + "11" -> {} + "12" -> {} + "13" -> {} + "14" -> {} + "15" -> {} + } + } + "29" -> { + //打扫速度 + } + "30" -> { + //工作状态 + workStateView.text = when (parseObject[it]) { + "1" -> "工作中" + "2" -> "停止中" + "3" -> "充电中" + "4" -> "找回充电" + "5" -> "休眠中" + "6" -> "报错中" + "7" -> "升级中" + "8" -> "寻回机器中" + "9" -> "功能演示中" + else -> "备用中" + } + } + "31" -> { + //UV灯 + } + "32" -> { + //语言包 + } + "33" -> { + //静音模式 + } + "34" -> { + //寻回 + } + "35" -> { + //机器时间同步 + } + "38" -> { + //清扫时间 + workingTimeView.text = "${parseObject[it]}'" + } + "43" -> { + //声音 + } + "44" -> { + //清扫强度 + } + "45" -> { + //清扫记录 + } + "46" -> { + //累计面积 + } + "47" -> { + //累计次数 + } + "48" -> { + //累计时间 + } + "49" -> { + //耗材使用 + } } } } }) - val robotGridAdapter = IconTextGridAdapter( - this, LocaleConstant.ROBOT_FUNCTION_IMAGE, LocaleConstant.ROBOT_FUNCTION_ARRAY - ) - functionRecyclerView.adapter = robotGridAdapter - robotGridAdapter.setOnGridItemClickListener(object : - IconTextGridAdapter.OnGridItemClickListener { - override fun onItemClick(position: Int) { - when (position) { - 0 -> { + timeConfigLayout.setOnClickListener { + "此功能待后续完善".show(context) + } - } - 1 -> { + cleanRecordLayout.setOnClickListener { + "此功能待后续完善".show(context) + } - } - 2 -> { - - } - 3 -> { - - } - 4 -> { - - } - 5 -> { - "此功能待后续完善".show(context) - } - 6 -> { - "此功能待后续完善".show(context) - } - 7 -> { - navigatePageTo() - } - } - } - }) + settingsLayout.setOnClickListener { + navigatePageTo() + } } override fun initEvent() { diff --git a/app/src/main/res/layout/activity_air_cleaner.xml b/app/src/main/res/layout/activity_air_cleaner.xml index b9202c9..e7949e6 100644 --- a/app/src/main/res/layout/activity_air_cleaner.xml +++ b/app/src/main/res/layout/activity_air_cleaner.xml @@ -314,7 +314,6 @@ - initData: $deviceId") tuyaOTA = TuyaHomeSdk.newOTAInstance(deviceId) //控制设备前必须初始家庭化数据,每次 App 活跃期间,初始化一次即可。 deviceInstance = TuyaHomeSdk.newDeviceInstance(deviceId) @@ -71,47 +68,118 @@ val parseObject = JSONObject.parseObject(dpStr) parseObject.keys.forEach { when (it) { - "1" -> {} + "1" -> {//设备开关 + turnOffRadioButton.isChecked = parseObject[it] as Boolean + } + "11" -> { + //故障 + } + "14" -> { + //剩余电量 + batteryValueView.text = "${parseObject[it]}%" + } + "25" -> { + //Power on button + } + "26" -> { + //清扫方向 + + } + "27" -> { + //工作模式 + when (parseObject[it]) { + "0" -> turnOffRadioButton.isChecked = parseObject[it] as Boolean + "1" -> autoRadioButton.isChecked = true + "2" -> pointRadioButton.isChecked = true + "3" -> {} + "4" -> edgeRadioButton.isChecked = true + "5" -> rechargeRadioButton.isChecked = true + "6" -> {} + "7" -> {} + "8" -> {} + "9" -> {} + "10" -> {} + "11" -> {} + "12" -> {} + "13" -> {} + "14" -> {} + "15" -> {} + } + } + "29" -> { + //打扫速度 + } + "30" -> { + //工作状态 + workStateView.text = when (parseObject[it]) { + "1" -> "工作中" + "2" -> "停止中" + "3" -> "充电中" + "4" -> "找回充电" + "5" -> "休眠中" + "6" -> "报错中" + "7" -> "升级中" + "8" -> "寻回机器中" + "9" -> "功能演示中" + else -> "备用中" + } + } + "31" -> { + //UV灯 + } + "32" -> { + //语言包 + } + "33" -> { + //静音模式 + } + "34" -> { + //寻回 + } + "35" -> { + //机器时间同步 + } + "38" -> { + //清扫时间 + workingTimeView.text = "${parseObject[it]}'" + } + "43" -> { + //声音 + } + "44" -> { + //清扫强度 + } + "45" -> { + //清扫记录 + } + "46" -> { + //累计面积 + } + "47" -> { + //累计次数 + } + "48" -> { + //累计时间 + } + "49" -> { + //耗材使用 + } } } } }) - val robotGridAdapter = IconTextGridAdapter( - this, LocaleConstant.ROBOT_FUNCTION_IMAGE, LocaleConstant.ROBOT_FUNCTION_ARRAY - ) - functionRecyclerView.adapter = robotGridAdapter - robotGridAdapter.setOnGridItemClickListener(object : - IconTextGridAdapter.OnGridItemClickListener { - override fun onItemClick(position: Int) { - when (position) { - 0 -> { + timeConfigLayout.setOnClickListener { + "此功能待后续完善".show(context) + } - } - 1 -> { + cleanRecordLayout.setOnClickListener { + "此功能待后续完善".show(context) + } - } - 2 -> { - - } - 3 -> { - - } - 4 -> { - - } - 5 -> { - "此功能待后续完善".show(context) - } - 6 -> { - "此功能待后续完善".show(context) - } - 7 -> { - navigatePageTo() - } - } - } - }) + settingsLayout.setOnClickListener { + navigatePageTo() + } } override fun initEvent() { diff --git a/app/src/main/res/layout/activity_air_cleaner.xml b/app/src/main/res/layout/activity_air_cleaner.xml index b9202c9..e7949e6 100644 --- a/app/src/main/res/layout/activity_air_cleaner.xml +++ b/app/src/main/res/layout/activity_air_cleaner.xml @@ -314,7 +314,6 @@ - + + + + + + + + + + + + + android:layout_height="wrap_content" + android:layout_marginHorizontal="@dimen/dp_20" + android:background="@drawable/bg_solid_layout_white_radius_10" + android:gravity="center_vertical" + android:orientation="vertical" + android:paddingVertical="@dimen/dp_10"> + + + + + + + + + + + + + - + android:paddingHorizontal="@dimen/dp_10"> + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file