Программируем под Android - смотрим заряд батареи
Сложно представить человека без смартфона. Не малую часть рынка занимают устройства под управлением ОС Android. Одна из проблем современных гаджетов - аккумуляторы. Дабы продлить жизнь батарее, я не заряжаю её более чем на 80%.
Начинаю блок статей про Android. А точнее будем писать приложение, которое будет отслеживать уровень зарядки батареи и информировать нас о "высоком уровне" заряда.
Для этого я буду использовать Android Studio и Alcatel Idol 3 mini.
Создаём новый проект и idea сгенерирует "каркас" приложения: Класс "MainActivity", "activity_main.xml" и другие важные файлы.
MainActivity - класс, где логика, так скажем.
activity_main.xml - описываем "внешний вид" страницы.
Activity - можно принимать как "страницы".
В методе onCreate
класса MainActivity
добавим следующий код:
//IntentFilter Служит неким фильтром данных, которые мы хотим получить.
//ACTION_BATTERY_CHANGED - отслеживает изменение батареи
IntentFilter ifilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
//Чтобы получить текущее состояние батареи в виде намерения, нужно вызвать registerReceiver, передав null в качестве приемника, как показано в коде ниже.
Intent batteryStatus = registerReceiver(null, ifilter);
Получим значение заряда батареи:
int status = batteryStatus.getIntExtra("level", -1);
Проверим, если заряд батареи равно или больше 80% дадим знать, что пора снять с зарядки.
if(status >= 80){
//выведем всплывающее окно
Toast.makeText(getApplicationContext(),
"Хватит заряжать",
Toast.LENGTH_SHORT).show();
}
getApplicationContext()
- Доступ к контексту.
Так же доступ к контексту можно получить с помощью следующих методов:
- getApplicationContext(),
- getContext(),
- getBaseContext()
- this
LENGTH_SHORT — (По умолчанию) показывает текстовое уведомление на короткий промежуток времени (Примерно: 2 секунды)
LENGTH_LONG — показывает текстовое уведомление в течение длительного периода времени (Примерно: 3.5 секунды)
Context – это объект, который предоставляет доступ к базовым функциям приложения: доступ к ресурсам, к файловой системе, вызов активности и т.д.
Запускаем приложение в момент зарядки и получаем такое сообщение:
Листинг кода MainActivity
Заглавное изображение с сайта https://www.flickr.com/
Данный пост подготовлен автором @zheev.