Battery check

This commit is contained in:
mohamedkaif356
2023-10-05 10:56:09 +05:30
parent 27bf068df0
commit 315c46c014
3 changed files with 30 additions and 10 deletions

View File

@@ -19,7 +19,7 @@ android {
minSdk 21
targetSdk 34
versionCode 20
versionName "2.1.20"
versionName "2.1.21"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}

View File

@@ -22,7 +22,7 @@ import java.util.Date
import java.util.Locale
class UserListAdapter(
options: FirestoreRecyclerOptions<UserData>, private val view: View
options: FirestoreRecyclerOptions<UserData>, private val view: View, private val batLevel: Int
) : FirestoreRecyclerAdapter<UserData, UserListAdapter.OrderItemViewHolder>(options) {
class OrderItemViewHolder(val binding: UserItemViewBinding) :
@@ -46,8 +46,7 @@ class UserListAdapter(
"User ID:${model._id} \n Time: ${isBetween15And30Minutes(model.incubationTime)} \n Started at: ${
SimpleDateFormat("HH:mm:ss").format(
SimpleDateFormat(
"yyyy-MM-dd HH:mm:ss",
Locale.getDefault()
"yyyy-MM-dd HH:mm:ss", Locale.getDefault()
).parse(model.incubationTime)!!
)
}"
@@ -84,6 +83,14 @@ class UserListAdapter(
}
}
userCard.setOnClickListener {
if (batLevel < 40) {
Toast.makeText(
view.context,
"Battery level is low then 40%, please charge the device to continue testing",
Toast.LENGTH_SHORT
).show()
return@setOnClickListener
}
if (model.testStatus != null) {
if (model.testStatus!!) {
Toast.makeText(

View File

@@ -2,9 +2,11 @@ package com.example.hpostesting.presentation.dashboard
import android.app.AlertDialog
import android.content.Context
import android.content.Context.BATTERY_SERVICE
import android.content.DialogInterface
import android.content.Intent
import android.content.SharedPreferences
import android.os.BatteryManager
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
@@ -12,7 +14,6 @@ import android.view.ViewGroup
import android.widget.Toast
import androidx.fragment.app.Fragment
import androidx.fragment.app.activityViewModels
import androidx.lifecycle.lifecycleScope
import androidx.navigation.fragment.findNavController
import com.example.hpostesting.data.DataHolder
import com.example.hpostesting.data.constant.Constants
@@ -30,7 +31,6 @@ import com.google.firebase.ktx.Firebase
import dagger.hilt.android.AndroidEntryPoint
import `in`.sminnovations.hpostesting.R
import `in`.sminnovations.hpostesting.databinding.FragmentHomeBinding
import kotlinx.coroutines.launch
import java.text.SimpleDateFormat
import java.util.Date
import java.util.Locale
@@ -85,10 +85,15 @@ class HomeFragment : Fragment() {
}
hemoCubeViewModel.fireBaseBulkUpload.observe(viewLifecycleOwner) { result ->
if (result == "Success") {
Toast.makeText(requireContext(), "Test Results Uploaded Successfully", Toast.LENGTH_SHORT).show()
Toast.makeText(
requireContext(),
"Test Results Uploaded Successfully",
Toast.LENGTH_SHORT
).show()
}
if (result == "Error") {
Toast.makeText(requireContext(), "Test Results Upload Failed", Toast.LENGTH_SHORT).show()
Toast.makeText(requireContext(), "Test Results Upload Failed", Toast.LENGTH_SHORT)
.show()
}
}
binding.btnLogout.setOnClickListener {
@@ -142,7 +147,11 @@ class HomeFragment : Fragment() {
val recyclerViewOptions =
FirestoreRecyclerOptions.Builder<UserData>().setQuery(query, UserData::class.java)
.build()
rvAdapter = UserListAdapter(recyclerViewOptions, binding.root)
val bm = requireContext().getSystemService(BATTERY_SERVICE) as BatteryManager
val batLevel: Int = bm.getIntProperty(BatteryManager.BATTERY_PROPERTY_CAPACITY)
rvAdapter = UserListAdapter(recyclerViewOptions, binding.root, batLevel)
binding.rvOrder.adapter = rvAdapter
rvAdapter.startListening()
} catch (e: Exception) {
@@ -186,7 +195,11 @@ class HomeFragment : Fragment() {
val recyclerViewOptions =
FirestoreRecyclerOptions.Builder<UserData>().setQuery(query, UserData::class.java)
.build()
rvAdapter = UserListAdapter(recyclerViewOptions, binding.root)
val bm = requireContext().getSystemService(BATTERY_SERVICE) as BatteryManager
val batLevel: Int = bm.getIntProperty(BatteryManager.BATTERY_PROPERTY_CAPACITY)
rvAdapter = UserListAdapter(recyclerViewOptions, binding.root, batLevel)
binding.rvOrder.adapter = rvAdapter
rvAdapter.startListening()
}