package com.casic.br.view import android.content.Context import android.content.Intent import android.graphics.Color import android.net.wifi.WifiManager import android.provider.Settings import android.view.View import com.casic.br.R import com.casic.br.extensions.initLayoutImmersionBar import com.casic.br.utils.LocaleConstant import com.gyf.immersionbar.ImmersionBar import com.pengxh.kt.lite.base.KotlinBaseActivity import com.pengxh.kt.lite.extensions.navigatePageTo import com.pengxh.kt.lite.extensions.show import com.pengxh.kt.lite.utils.SaveKeyValues import com.pengxh.kt.lite.widget.dialog.BottomActionSheet import kotlinx.android.synthetic.main.activity_select_wifi.* import kotlinx.android.synthetic.main.include_base_title.* class SelectWiFiActivity : KotlinBaseActivity() { private val wifi by lazy { applicationContext.getSystemService(Context.WIFI_SERVICE) as WifiManager } override fun initLayoutView(): Int = R.layout.activity_select_wifi override fun observeRequestState() { } override fun setupTopBarLayout() { ImmersionBar.with(this).statusBarDarkFont(true).init() initLayoutImmersionBar(rootView) leftBackView.setOnClickListener { finish() } titleView.visibility = View.GONE } override fun initData() { } override fun initEvent() { changeWifiView.setOnClickListener { startActivity(Intent(Settings.ACTION_WIFI_SETTINGS)) } nextStepButton.setOnClickListener { val wifiName = wifiNameView.text.toString() if (wifiName.isBlank()) { "请确认WiFi已连接".show(this) return@setOnClickListener } val wifiKey = wifiKeyView.text.toString() if (wifiKey.isBlank()) { "请输入WiFi密码".show(this) return@setOnClickListener } //保存Wi-Fi密码 SaveKeyValues.putValue(LocaleConstant.WIFI_PASSWORD, wifiKey) val wifiConfig = arrayListOf(wifiName, wifiKey) BottomActionSheet.Builder() .setContext(this) .setActionItemTitle(arrayListOf("Wi-Fi连接模式", "蓝牙连接模式")) .setItemTextColor(Color.BLUE) .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { override fun onActionItemClick(position: Int) { when (position) { 0 -> navigatePageTo<ConnectDeviceActivity>(wifiConfig) 1 -> navigatePageTo<ScanBluetoothActivity>(wifiConfig) } } }) .build().show() } } override fun onResume() { super.onResume() //获取已连接WiFi配置 wifiNameView.setText(wifi.connectionInfo.ssid.replace("\"", "")) wifiKeyView.setText(SaveKeyValues.getValue(LocaleConstant.WIFI_PASSWORD, "") as String) } }