[Request]: Support tracking all battery aspects
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 48/100
Direção de pesquisa
Revise o plugin battery_plus e as APIs de notificação do iOS e do Android vinculadas na issue, começando pela implementação existente para iOS e Android referenciada pelo autor. Confirme as plataformas compatíveis e os campos de BatteryInfo e, em seguida, verifique se as alterações no nível da bateria, no estado da bateria e na economia de energia são entregues por meio do stream proposto.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Plugin
battery_plus
Use case
At the moment, there is no option to track changes in battery level or any other aspect. However, for many apps, it would be quite reasonable to react to such changes, by displaying a snackbar message or sending analytics data.
iOS provides support for this functionality:
Documentation for level notification
Documentation for power save mode notification
Publishers.Merge3(
NotificationCenter.default.publisher(for: UIDevice.batteryLevelDidChangeNotification),
NotificationCenter.default.publisher(for: UIDevice.batteryStateDidChangeNotification),
NotificationCenter.default.publisher(for: NSNotification.Name.NSProcessInfoPowerStateDidChange)
)
.sink { _ in self.onBatteryInfoChanged() }
Android also supports monitoring battery level changes:
Documentation
Power save mode changed notification
applicationContext?.registerReceiver(
this,
IntentFilter().apply {
addAction(Intent.ACTION_BATTERY_CHANGED)
addAction(Intent.ACTION_BATTERY_LOW)
addAction(PowerManager.ACTION_POWER_SAVE_MODE_CHANGED)
}
)
I’m not entirely sure about other platforms, but I would expect similar functionality to be available.
Proposal
class BatteryInfo {
final double level;
final bool isLow;
final bool isInBatterySaveMode;
final BatteryState state;
}
battery.onBatteryInfoChanged.listen((BatteryInfo info) {
// Do something with new info
});
I actually already have an implementation for iOS and Android and would be happy to contribute if this proposal is considered useful.
@mhadaily cc
- Linguagem predominante
- Dart
- Estrelas
- 1.9k
- Forks
- 1.3k
- Merge médio
- 8h 43min
- PRs com merge (30d)
- 13
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de fluttercommunity/plus_plugins
-
enhancement triage
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
fluttercommunity/plus_plugins#4004 · 1 reação ·
Mantenedores costumam responder em até 1 dia
-
[Bug]: (share_plus) iOS drops the subject when sharing a uriTalvez já em andamento @kaluli123123 assumiu há 21 dias. Abertabug triage
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
fluttercommunity/plus_plugins#3994 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
[Bug]: package_info_plus web throws StateError when the engine assetBase is relativeTalvez já em andamento @nmloc assumiu há 7 dias. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 35/100
fluttercommunity/plus_plugins#4005 ·
Mantenedores costumam responder em até 1 dia
-
[Bug]: share_plus decodes full-resolution images on the main thread when preparing iOS share previewsTalvez já em andamento @ananya-kaul assumiu há 11 dias. Aberta
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 45/100
fluttercommunity/plus_plugins#4001 ·
Mantenedores costumam responder em até 1 dia
-
[Request]: network_info_plus: use ConnectivityManager for getWifiIP and getWifiGatewayIP from Android 7 (N), so ethernet works below Android 12Talvez já em andamento @redge-munch assumiu há 19 dias. Abertaenhancement triage
Dificuldade 3/5 Meio dia Facilidade para iniciantes 22/100
fluttercommunity/plus_plugins#3998 ·
Mantenedores costumam responder em até 1 dia
Todas as issues de fluttercommunity/plus_plugins
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
Mantenedores costumam responder em até 4 dias
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 79/100
Mantenedores costumam responder em até 1 dia
-
[Bug] 附近设备权限未申请Abertabug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 67/100
bggRGjQaUbCoE/PiliPlus#3369 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
-
[lsp] Remove DartAnalysisServerService.serverReadyForRequest() from EnableDartSupportForModuleAbertaP1
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
flutter/flutter-intellij#9177 ·
Mantenedores costumam responder em até 1 dia