Nederlandse corona-app werkt niet goed op achtergrond door accubesparingsmodus

De Nederlandse CoronaMelder-app werkt niet goed op Android-telefoons met een eigen accubespaarmodus. Daardoor krijgen gebruikers soms pas een notificatie als ze de app handmatig openen. Het is niet duidelijk of dat probleem is opgelost als de app in werking treedt.

Minister Hugo de Jonge van Volksgezondheid bevestigt het probleem in een brief aan de Tweede Kamer. Het probleem komt zowel bij iOS als op Android voor, zegt hij. "Op technisch gebied is geconstateerd dat de app niet altijd wordt bijgewerkt als deze op de achtergrond draait. Het gevolg hiervan is dat sommige gebruikers mogelijk pas een notificatie zien bij het openen van de app." De Jonge schrijft dat het probleem verschilt per toestel. Het probleem zou 'samenhangen met het framework van Apple en Google'. Het is niet duidelijk of De Jonge daarmee verwijst naar de api van die bedrijven, of eerder naar iOS en Android.

Het probleem kwam al eerder aan het licht. Er werd een issue over aangemaakt op GitHub. Daar is de ontwikkeling van de Nederlandse corona-app te volgen. In het issue wordt gesproken over problemen met de verschillende accubespaarmodi die fabrikanten in hun telefoons zetten. Daarbij wordt specifiek Xiaomi genoemd, omdat een gebruiker daar een probleem mee meldt. Het probleem lijkt echter bij alle Android-smartphones voor te komen met zo'n modus. Een ontwikkelaar schrijft daar dat het probleem een hoge prioriteit heeft. Over iOS melden de ontwikkelaars niets op GitHub. Het besturingssysteem van Apple heeft ook een ingebouwde energiebesparingsmodus.

De batterijmodus zorgt dat apps die op de achtergrond draaien na een tijd automatisch worden uitgeschakeld. Daar komt bij dat de modus geoptimaliseerd wordt op basis van welke apps het actiefst worden gebruikt, maar de corona-app draait alleen op de achtergrond. Een van de ontwikkelaars zegt dat wordt onderzocht of gebruikers in de instellingen van Android de batterijoptimalisatie zelf uit kunnen schakelen voor specifiek de corona-app, maar het is niet zeker of dat het probleem volledig oplost.

Volgens De Jonge speelt het probleem ook in andere Europese landen. De minister zou praten met andere instellingen en met Apple en Google om met een oplossing te komen. Het is niet bekend of het probleem wordt opgelost voordat de app in Nederland definitief wordt ingevoerd. Dat zou aanvankelijk 1 september gebeuren, maar de invoer is uitgesteld. Dat heeft niets te maken met technische problemen; De Jonge wil eerst een tijdelijke wet doorvoeren die waarborgen rondom het gebruik van de app regelt.

Coronamelder, augustus 2020

Door Tijs Hofmans

Nieuwscoördinator

31-08-2020 • 15:52

113

Reacties (113)

113
108
73
11
1
28
Wijzig sortering
Ik ben degene die de genoemde issue op Github heeft aangemaakt en had inderdaad problemen met de accubesparingsmodus van Xiaomi.

Even voor de duidelijkheid: de API van Google werkt gewoon op de achtergrond. Deze verzamelt de Bluetooth codes en informatie hierover. Wat niet werkt is het periodiek vergelijken van deze codes met de Corona-positief bevonden codes bij de GGDs. De Coronamelder app is gewoon een app op de achtergrond die probeert te synchroniseren en wordt afgesloten door de accubesparingsmodus van sommige fabrikanten. Van deze modi hebben erg veel apps last, zie ook https://dontkillmyapp.com/, zoals in andere comments is genoemd.

Overigens zijn mijn problemen opgelost door de accubesparingsinstellingen aan te passen, zoals ook beschreven in de issue.

[Reactie gewijzigd door Stefan-Z op 24 juli 2024 00:54]

Is het zo dat zolang je wekelijks(?) die reminder notificatie krijgt dat exposure notifications aan staan het goed is, of komt dit uit Android/Google zelf en niet uit die Coronamelder app?

Ik heb de app al een tijd geinstalleerd en merk niks qua batterij verbruik. Het enige wat ik qua "battery manager" heb is die pas aan slaat bij 20% op Paranoid Android (Valt onder AOSP lijkt mij?).

Zou graag willen uitvinden of ik het nou allemaal goed werkend heb, of niet :)

[Reactie gewijzigd door thomas1907 op 24 juli 2024 00:54]

Ik heb zelf die exposure reminder notificatie nooit gehad, dus dat durf ik je niet te vertellen. Ik kreeg zodra ik de Coronamelder app opstartte de melding dat deze de laatste 24 uur geen verbinding had kunnen maken met de server. Als je die niet krijgt, is bovenstaande geen probleem voor jou.

Een extra check is in Instellingen - Google - Covid-19 Exposure Notifications. Daar kun je zien hoeveel exposure checks er door Coronamelder zijn gedaan in de afgelopen 14 dagen. Hier zag ik steeds 0 checks staan en daardoor wist ik zeker dat de app niet goed werkte op de achtergrond.
Interessant! Daar kun je ook zien wanneer er een controle is geweest (bij blootstellingschecks). Bij zo'n entry staat ook "aantal sleutels". Weet iemand wat dat inhoudt? Ik zie daar meestal 150, maar ook een keer 300 en 450.
Dat is dus afhankelijk van de besparingsmodus van de telefoon. Ik heb zelf een OnePlus (die bovenaan staat bij dontkillmyapp) en daar is de eerste keer het aantal ook 150 codes, maar de tweede keer was dit 2550. De besparing gaat hier dus ten koste van de werking van de app.

Ook was check 1 op 2020-08-19 en de tweede net toen ik de app opende (samen met de enorme piek dus)
Ik heb sinds 22 augustus al 13 checks gehad (sinds ik mijn accubesparingsinstellingen heb aangepast), dus bij jou lijkt de app ook afgesloten te worden op de achtergrond.

Volgens mij checkt de app elke ~4 uur of een GGD nieuwe sleutels positief heeft bevonden. Als dit zo is, checkt de app via de API of jij matchende sleutels hebt en zie je een extra entry bij exposure checks in de Google settings.
Is het zo dat zolang je wekelijks(?) die reminder notificatie krijgt dat exposure notifications aan staan het goed is, of komt dit uit Android/Google zelf en niet uit die Coronamelder app?
Dat is alleen een melding van Google dat er een app op je apparaat is die gebruik maakt van de API. Zegt niks over of die app goed werkt. Meer een soort privacy waarschuwing.

[Reactie gewijzigd door Darkstriker op 24 juli 2024 00:54]

Vreemd ik heb de app er na een paar dagen weer vanaf gegooid, want het batterijgebruik was zo erg bij mijn S10 dat de telefoon zelfs warm werd en na 10 uur alweer aan de lader moest.
Zelfde hier ook gehad met de iPhone HR
69%-72% van de accu werd opgeslurpt door de app.
En op het moment dat je de batterij oplaad en je niet in de besparingsmodus zit, heb je er dan nog last van? Of staat die modus altijd aan? (bij Samsung / LG is het pas na x percentage).
De vendor accubesparingssoftware is altijd actief. Dit is iets anders dan de (ultra) battery saving modus die je zelf in en uit kunt schakelen.

Dus als antwoord op je vraag: dit was altijd een probleem, bij elk accupercentage en ook aan de lader.

[Reactie gewijzigd door Stefan-Z op 24 juli 2024 00:54]

Vervelend dat deze fabrikanten de standaard werken van Android en zijn APIs aanpast en vervolgens apps breekt.
Android manufacturers listed below prefer battery life over proper functionality of your apps.
Vanop de link die je post. Ik snap niet hoe dit iets slecht is want ik vind het heel fijn dat apps me niet continue kunnen spammen met nieuws, updates, "free coins".
Dat is waarschijnlijk gerelateerd aan het feit dat veel fabrikanten een agressieve vorm van "battery management" hebben geïmplementeerd: https://dontkillmyapp.com/. Zie ook: https://dontkillmyapp.com/problem.

Google gaat dit mogelijk aanpakken met Android 11: https://www.reddit.com/r/...ring_team_ask_us/fxg9y4f/.

Zoals ik eerder schreef, is dit niet per se gerelateerd aan Doze Mode (zie: https://developer.android...device-state/doze-standby), wat in Android 6 is geïntroduceerd.

[Reactie gewijzigd door Anonymoussaurus op 24 juli 2024 00:54]

Onjuist. Doze mode is van Android zelf, en als een developer de APIs correct implementeert vormt dit dus geen probleem. Google heeft fabrikanten ook verboden om Doze mode aan te passen, als zij de Play Store op hun apparaten willen krijgen.

Het gaat hier om het soort onzin dat vooral fabrikanten als OnePlus en Huawei doen. Hierdoor breken ze dus de API contract tussen operating system en software, waardoor de software dus niet correct kan functioneren omdat er niet gegarandeerd kan worden dat wat er in de documentatie staat ook effectief overeenkomt met hoe de operating system zich gedraagt. Zeer kwalijke ontwikkeling, en dan ook de reden dat ik OnePlus heb opgegeven als zowel gebruiker als ontwikkelaar.

De link die je geeft naar https://dontkillmyapp.com/ is inderdaad relevant aan het probleem, maar heeft dus niets met Doze te maken of hoe fabrikanten Doze hebben "afgesteld". Het gaat hier om eigen app killers van fabrikanten die zich in het wilde westen wanen en at random apps afschieten.
Op mijn Pixel 4 met Android 11 gebeurt dit anders ook continu. En dat zou toch de meest correct werkende Android ervaring moeten zijn.
Als ik bijvoorbeeld de SamenGezond app mijn fiets of wandelgegevens bij wil laten houden, moet ik Google Maps aanzetten met een route om ervoor te zorgen dat deze continu locatiegegevens binnenhaalt zodat de SamenGezond app daar ook gebruik van kan maken. Idem voor m'n Mi band 4.
Ik had een FBTO rijstijl verzekering, maar die werkt om dezelfde reden niet op m'n Pixel 4. Zelfs niet als ik een route op Maps aan zet en de app open heb staan tijdens gebruik. Dat laatste was een probeersel, omdat ik alleen toestemming kon geven voor locatiegebruik tijdens gebruik van de app.
Dat is echter niet de schuld van Android. Android heeft zelf aan bettary saving mode genaamd Doze. Als developers hun app correct implementeren zou Doze geen probleem mogen vormen. De app moet echter nog steeds wel correct geïmplementeerd zijn.

Jouw probleem klinkt trouwens eerder alsof je locatiepermissies op "only when using the app" hebt staan, waardoor de app vanop de achtergrond je locatie niet kan opvragen... Lijkt me weinig gerelateerd aan app killers.

[Reactie gewijzigd door RobinJ1995 op 24 juli 2024 00:54]

Als het voor zoveel apps blijkbaar een probleem is dan klinkt het alsof het correct omgaan met Doze vrij lastig is. Of dat deze ontwikkelaars allemaal lui zijn. :)

Dat is ook het eerste wat ik dacht, maar voor zowel Mi Fit als SamenGezond staat deze op 'Altijd toegestaan'. Deze optie heb ik niet bij FBTO Rijstijl, daar is 'Toestaan bij gebruik van app' het hoogst haalbare. Misschien dat deze daarom helemaal niet werkend te krijgen is, maar dan nog lijkt het me dat Mi Fit en SamenGezond hier zonder problemen gebruik van moeten kunnen maken, zonder dat ik daarvoor Google Maps moet laten draaien.
Deze optie heb ik niet bij FBTO Rijstijl, daar is 'Toestaan bij gebruik van app' het hoogst haalbare.
Dat betekent dat de app gebouwd is voor een oudere versie van Android, en er dus by default strengere beperkingen van toepassing zijn op de app zodat deze de nieuwere power saving features van Android niet kunnen omzeilen. In het verleden stond Google vaak nog toe dat nieuwere beperkingen nog niet van toepassing waren op apps die een oudere Android API targette, maar daar maakte malafide bedrijven als Facebook maar al te graag gebruik van om zo battery saving en privacy features te omzeilen.

De developer van de apps waar jij het over hebt moeten in dit geval dus de targetSdkVersion in hun Android build verhogen naar een nieuwere versie. Het is aan app developers om hun eigen apps up-to-date te houden.
De developer van de apps waar jij het over hebt moeten in dit geval dus de targetSdkVersion in hun Android build verhogen naar een nieuwere versie. Het is aan app developers om hun eigen apps up-to-date te houden.
Maar als ze dat doe, dan kan de app niet meer op oudere telefoons runnen of vergis ik me daar?
Nee, dat is niet zo. Er is de target SDK, en de minimum SDK. Minimum SDK beslist wat de laagste Android (API) versie is waar je app op kan draaien. Je kan, als je wilt, nog steeds een app maken die op Android 1.0 kan draaien. Bij het gebruiken van features die voor nieuwere Android API-versies zijn, kan je dan checken welke API-versie er draait op het apparaat waar je app op draait, en aan de hand daarvan een alternatieve implementatie gebruiken (simpele if statement, trouwens) of de functionaliteit op dat apparaat uitschakelen. Target SDK beslist welke nieuwe features je kan gebruiken (hoewel zoals ik eerder al zei die dus meestal niet beschikbaar zijn op oudere API-versies).
Bedankt voor de info, heel duidelijk :)
Dat betekent dat de app gebouwd is voor een oudere versie van Android, en er dus by default strengere beperkingen van toepassing zijn op de app zodat deze de nieuwere power saving features van Android niet kunnen omzeilen.
Geldt dit alleen voor locatie, of ook voor andere permissies? Zou wel echt fijn zijn als het voor alle permissies zou gelden.
Hangt er vanaf wat Google beslist. Ze willen natuurlijk compatibiliteit maximaliseren, gezien een app die gebouwd is voor een oudere API-versie natuurlijk wel gewoon zou blijven moeten werken. Maar soms kiezen ze er voor om dit niet te doen omdat bedrijven als Facebook dit maar al te graag gebruiken als manier om nieuwe power saving-/privacyfeatures te omzeilen.
Google maps heeft bij mij altijd zijn locatie permissies op volledig staan. Maar doe ik Maps op de achtergrond dan word de stip grijs. Dus is waarschijnlijk ergens anders de locatietoevoer stopgezet dan in de permissies. Hij stuurt dan ook de locatie niet meer door naar WearOS met navigeren en "locatie van telefoon en horloge" aan.
Dat komt omdat de permissie “toegang tot locatie op de achtergrond” (onder overig) ontbreekt in de SamenGezond-app, dit is nodig sinds Android 10. Dat zullen de makers van de app op moeten lossen.
En dat werkt dan wel zodra Maps aanstaat, ook al heb ik daarna in de SamenGezond app m'n activiteit gestart en vervolgens naar de achtergrond gebracht?
Dat zou dan ook niet moeten mogen als hij niet de toestemming heeft voor 'toegang tot locatie op de achtergrond', lijkt me.
Daarnaast werkt het ook niet als ik de app open heb staan, zonder dat Google Maps aanstaat. Terwijl hij daar dus wel toegang voor zou moeten hebben.
Ook niet echt een goed gewaardeerde app conform de users, dit samen met dat de FAQ-pagina voor GPS waar ze gebruikers naar refereren geenszins poogt te reppen met Permissions komt het op mij over dat ze niet heel bekend lijken te zijn met de werking en belang van permissions.
https://www.samengezond.nl/gps/ en dan lijkt dit probleem ook al minstens 3 maanden te spelen...

En dan is dit een partij waar je vrij gemakkelijk dat soort gegevens naar wil uploaden? Ik zou willen opperen daar wat meer stil bij te staan... als een development team de werking van Permissions niet begrijpt hoeven we al zeker niet er van uit te gaan dat de data goed beschermd zou kunnen worden, dat is complexer.
Misschien een tip voor je om een app als GPS Locker https://play.google.com/s...lentlexx.gpslock&hl=en_US te gebruiken i.c.m. SamenGezond / MI Fit. Net als de Google Maps app zorgt deze app ervoor dat je GPS aan blijft staan, maar een route instellen o.i.d. is niet nodig.
Nu een vraag over dat er pas een notificatie word gegeven/bijgewerkt als de telefoon uit de slaapstand word gedaan.

Datzelfde heb ik met de notificaties van de app ING, als ik een pinbetaling heb gedaan dan gebeurd het vaak dat ik pas thuis ben en mijn mobiel open doet de notificatie van ING naar boven komt.

Toch snap ik dat niet, als mij een Telegram bericht word verstuurd door iemand, krijg ik dat direkt binnen al heb ik mijn mobiel 5 uur niet uit de slaapstand gehaald maar een notificatie van een pinbetaling krijg ik van ING niet direkt terwijl een notificatie/bericht van Telegram wel direkt is.

Heeft dat dan van ING ook te maken met de "accubespaarmodus" maar waarom heb ik dat van Telegram daar geen probleem mee.

Heb in mijn mobiel de mogelijkheid om app's te mogen laten starten en de mogelijkheid om op de achtergrond te blijven werken, zowel de ING als Telegram heb ik die mogelijkheid gegeven maar toch geen notificatie van ING maar wel van Telegram.
Het is eigenlijk vrij simpel :) Als je GMS (Google's eigen notification service) priority notifications gebruikt ben je met je notifications uitgezonderd van de meeste van Android/Google's power saving features (wel enkel voor notifications). Telegram doet aan een dubbele approach; ze gebruiken zowel GMS push notifications als hun eigen background service, en slagen er daarmee in een uitermate stabiel notificatiesysteem gebouwd te hebben.
Je hebt gelijk. Ik heb m'n post iets verkeerd verwoord, want ik bedoel inderdaad dat het relevant is maar wel los van elkaar staat. Zal m'n post aanpassen. Bedankt voor je inbreng.
Ik denk niet zozeer dat het met doze mode te maken heeft. Dat is een goed gedocumenteerde API.

Het probleem is denk vooral fabrikanten die denken iets beters te hebben dan Doze mode.
Zie https://dontkillmyapp.com/problem
Ik heb vaker Apps gemaakt die op de achtergrond moeten kunnen werken in combinatie met Bluetooth. Apple geeft een ontwikkelaar 10 seconden te tijd om op de achtergrond de taken af te ronden. Bijvoorbeeld opvragen van locatie, data sturen naar een server en een response terug geven naar de gebruiker. Vroeger was dit tevens 30 seconden, uit mijn hoofd in iOS 10.

Dezelfde App, die geschreven is voor Android is een gigantische ramp. Samsung plaatst Apps na een tijdje in sluimer modes, hierdoor wordt de App op de achtergrond volledig afgesloten zonder dat de gebruiker dit merkt. Wel zie je de service nog aan staan (je icoontje blijft in de statusbar staan) maar de achtergrond activiteiten van de App werken dan niet meer.

Bij een samsung kun je de App laten draaien op de achtergrond door naar: Instellingen -> Apparaatonderhoud -> batterij -> sluimeren -> uitsluiten te gaan en daar je App te selecteren die aan moet blijven staan.

Op een Huawei moet je weer naar: Instellingen -> Apps -> Beheren -> Apps Automatisch beheren -> Uitzetten.
Xiaomi heeft ook een eigen batterijbeheer systeem en dat gaat soms nogal agressief te werk waardoor gewenste functionaliteit niet goed werkt. Het is natuurlijk een fijne grens tussen gewenste functionaliteit en overdreven batterijverbruik maar het is als gebruiker gewoon niet fijn dat je Fitbit niet meer synchroniseert ondanks dat je dat wel hebt aangegeven in de app. Dan moet je de app weer als uitzondering toevoegen maar een niet-poweruser zal dat niet zo makkelijk doen.
In mijn Samsung A40 zit het op een iets andere plek:
- Instellingen
- zoeken naar: speciale, kies: Speciale toegang
- Batterijverbr. optimalis.

Standaard worden de apps getoond die niet geoptimaliseerd zijn, maar zit kun je wijzigen
Je kunt nu zoeken naar Corona, en eventueel de optimalisatie uitzetten
10 seconden is echter onzin. Digitale operaties zijn niet compleet in x aantal seconden. CPU cycles of geheugengebruik beperken? Sure. Maar "10 seconden" betekent voor een computer niks, en daar kan een developer dus ook helemaal niks mee. Als jij even op een slechtere verbinding zit wordt de taak dus middenin afgebroken.
Zeker wel, een OS kan simpelweg een timer laten aflopen en dit zie ik ook in de logs terug komen op iOS. Mijn app wordt 'terminated' als ik mijn background task niet op tijd afrond door bijvoorbeeld een slecht reageerde API of een slechte 4G verbinding.

Als je een CPU Cycle zou hebben, en deze loopt vast zou je dus een hangende taak hebben met als resultaat een batterij etende app.

Ik citeer even:

"After 30 seconds the background task expires. At this point one of two things happens:
a. If you have an expiry handler, that will be called. It must end the background task, at which point your app will suspend ( A ).
b. If you have no expiry handler, or it fails to end the background task promptly, the watchdog will kill your app ( B )."

Bron: https://medium.com/swlh/h...ks-in-ios-13-67f717d94b3d

[Reactie gewijzigd door kevinkrs op 24 juli 2024 00:54]

Voor een bepaalde app hebben we hier omheen moeten werken door in intervals een geluidloos audiobestand af te spelen. Dat is alleen strontvervelend met CarPlay. (Gaat om een sideloaded app trouwens, in de App Store krijg je dat er wss nooit doorheen gejast.)
Er is ook een setting om apps niet af te schieten (Android 10):

Settings -> Device care -> Battery -> App power management -> Apps that won't be put to sleep

Hier kun je de apps toevoegen waarvan je niet wilt hebben dat ze gekilled worden ...
Maar ga Cor en Jon van het hoekje, die eindelijk zijn overtuigd om de CoronaMelder app te installeren, maar eens uitleggen hoe dat precies werkt.
Lijkt mij (op Android) een kwestie van bij de eerste keer de app openen een scherm tonen waarin gevraagd wordt om de app aan de lijst met beschermde apps toe te voegen.
Ik heb een aantal apps dat al zien doen, dus dat lijkt mij geen issue.
Het gaat hier niet om standaard-Android, maar om fabrikanten hun eigen app killers die semi-randomly en tegen alle API contracts apps afschieten om "batterij te besparen" (wat ze vaak trouwens in praktijk niet eens doen). Dit valt dus niet met een standaard-methode uit te zetten, zelfs door de gebruiker zelf. Op mijn OnePlus 5T bijvoorbeeld is er geen enkele mogelijkheid om OnePlus hun app killer uit te zetten (ja, ik heb alle opties geprobeerd; er blijft altijd iets dat niet van Android zelf is apps at random afschieten -- ik heb uiteindelijk maar een custom ROM geïnstalleerd om fatsoeinlijk gebruik te kunnen maken van Fitbit e.d.).
Voor een tweaker is dat geen probleem nee. Voor de gemiddelde nederlander is dat ofwel moeilijk, ofwel een extra stap om de app toch maar niet te gebruiken.
Vind ik onzin om eerlijk te zijn. Als ze een opslag permissie kunnen accepteren die hierom vraagt, kunnen ze ook een app toevoegen aan "uitgesloten apps".
Misschien dat het dan per android versie nog weer anders is, maar bij opslag hoef ik alleen op akkoord te klikken, voor uitsluiten van batterij optimalisatie moet ik de settings in. Niet een simpele klik.

Op basis van dat was mijn reactie dan ook, dat het wel relatief gecompliceerd is voor veel nederlanders.

ik gebruik overigens een Honor 20 Pro met laatste update (android 9).
Maarja, dan moet iemand het wel weten waar het voor is, en de meeste lezen die zooi toch niet echt.
Ik denk dat je mensen toch overschat. Mensen in mijn omgeving als ze de knop alles sluiten doen denken ze echt dat alles gesloten is. Die beseffen niet dat dit alleen maar voorgrond sluiten is. Sterker nog ik ken mensen die zeggen dat de telefoon uit is omdat ze de power knop 1 keer ingedrukt hebben. Of telefoon resetten is op standby zetten en weer scherm aan.

En je moet dan wel bewust zijn dat accu besparing het probleem veroorzaakt om dit te kunnen oplossen.

Er zullen best genoeg mensen zijn die het wel zouden kunnen hoor. Maar in mijn omgeving niet veel ieder geval.
Ik wist eerlijk gezegd niet dat met bluetooth ook de afstand gemeten kon worden. Dat een 'accu-besparingsstand' het signaal zwakker maakt kan ik me voorstellen, maar de plaatsing van de receivers en transmitter, het merk/fabrikant zijn toch ook niet in elke telefoon hetzelfde? Laat staan dat de signalen ge-eikt zijn. Ik denk eerlijk gezegd niet dat de corona-app goed gaat werken.

Wat is toch, een kritische kanttekeningen/constatering en je wordt gelijk gemind

[Reactie gewijzigd door DuneDude op 24 juli 2024 00:54]

Het mechanisme is gebouwd rond ToF (Time of Flight), en meet hoe lang een bluetooth-signaal erover doet om van hier naar daar te komen. De snelheid van radiogolven is onafhankelijk van de sterkte van het signaal. Vergelijk het met geluidsgolven: als je verder van een speaker staat, hoor je hem alleen maar zachter, maar niet hoger of lager (tenzij in beweging, maar da's een andere discussie).

Dus de kracht van de zender, of obstakels die het signaal verzwakken, of de positie van de antenne in het toestel is van minder belang.

Ik vond een interessante paper hierover (en een vergelijking met de andere manier van afstand schatten die inderdaad wél is gebaseerd op sterkte van het signaal) hier.

ToF is an sich niet nieuw; Apple gebruikt een wifi-variant hiervan (onderdeel van 802.11v) om te checken of een Apple Watch in de buurt van een Mac is, zodat je je computer ermee kunt unlocken.
Ik dacht dat het werkt emet calibratie. Dus bij elk beacon een indicator meesturen hoe sterk het zendsignaal van dat type toestel is. En het ontvangende toestel weet ook hoe efficiënt die zelf is, en samen vormt dat dan een referentie.
Dit is een symptoom van een in mijn ogen slecht ontworpen mechanisme (in de besturingssystemen) . Er zijn niet zo veel redenen voor een app om überhaupt op de achtergrond te draaien. Althans. Niet voor de gebruiker.
Als je op een gerootte android telefoon kijkt, zie je dat allerlei apps meestarten met je telefoon. Van mij mag vrijwel iedere app die ik heb vrijwel direct in een slaapmodus komen.
Doordat het door allerlei appmakers wordt misbruikt dat je überhaupt op de achtergrond actief kan zijn, waarschijnlijk voor datavergaring, is het besturingssysteem maar zo afgesteld dat het weinig actieve apps in slaap zet,zonder dat de gebruiker daar redelijkerwijs iets op te zeggen heeft wat wel en niet op de achtergrond mag blijven draaien of überhaupt actief zijn of meestarten met je telefoon.

Edit: voor deze app is er juist wel een reden om op de achtergrond te draaien, maar in z'n algemeen zijn er weinig goede redenen.

[Reactie gewijzigd door lenwar op 24 juli 2024 00:54]

Anoniem: 310408 @lenwar31 augustus 2020 16:54
Dit is een symptoom van een in mijn ogen slecht ontworpen mechanisme. Er zijn niet zo veel redenen voor een app om überhaupt op de achtergrond te draaien.
Leg eens uit hoe een dergelijke applicatie nuttig kan zijn als ie niet op de achtergrond draait?
Deze app dus juist wel, maar ik bedoel in z'n algemeen. Er zijn niet veel redenen om bijvoorbeeld een spelletje, tekstverwerker, internetverkenner, enz enz enz op de achtergrond actief te laten zijn.
Waar ik op doel, is dat al die apps maar persé op de achtergrond actief willen zijn, om aan datavergaring te doen en dat soort zaken. Door dit gedrag zijn de besturingssystemen zo ontworpen, dat ze op de gok (gechargeerd) apps van afschieten, met als resultaat, dat apps die het wel echt nodig hebben hier slachtoffer van zijn
Er zijn niet veel redenen om bijvoorbeeld een spelletje, tekstverwerker, internetverkenner, enz enz enz op de achtergrond actief te laten zijn.
Spelletjes als Pokemon Go werken op locatiebepaling. Tekstverwerkers zijn tegenwoordig multi-user-dingen, dus misschien wil je op de hoogte blijven wanneer een collega iets in je document heeft gewijzigd. En een browser wil je misschien ook op de achtergrond openhouden omdat je er muziek in afspeelt.

Ik begrijp je punt, en ben het niet oneens, maar als er voor deze drie cases al uitzonderingen zijn te bedenken, dan zijn ze voor alles te bedenken. Ben het met je eens dat een OS, helemaal een mobiel OS, hier iets mee moet om niet alle energie hieraan te verspillen, dat werkt alleen maar misbruik in de hand.
Zo'n spel en zo'n webbrowser wil je eerst openen voordat ze wat gaan doen toch? Dus niet bij het starten van de telefoon al.
En die tekstverweker, die kan een signaal krijgen via cloud messaging. Wordt ie wakker gemaakt als 'de cloud' een melding heeft gezien.
Dat is veel efficienter dan elke 5 minuten de server te contacteren voor een update.
Hij hoeft maar eens in de 4+/- uur actief te zijn voor een exposure controle. De rest van de tijd doet het OS zelf het nuttige werk.
In Duitsland hebben we zo'n app al sinds half juni geloof ik en dat ding is volgens mij open source. Geen enkel idee waarom dit in Nederland zo verschrikkelijk lang moet duren, vergeleken met de buren. (😇)

Kuckmal: nieuws: Duitse regering brengt opensource corona-app uit


Met m'n hoofd bij een geheel ander artikel over deze app, ik word oud. 😇

[Reactie gewijzigd door iamerwin op 24 juli 2024 00:54]

AuteurTijsZonderH Nieuwscoördinator @iamerwin31 augustus 2020 16:10
Die app heeft alleen precies hetzelfde probleem...
Waarom maak je er in de titel dan van 'Nederlandse Corona app werkt niet goed'.

Dit is nogal een sturende titel als je het mij vraagt.
AuteurTijsZonderH Nieuwscoördinator @MikeyMan31 augustus 2020 17:05
Omdat het in Duitsland al langer een ding is, en De Jonge er nu in Nederland ook mee komt. Het gaat bovendien om twee verschillende apps dus het is niet vanzelfsprekend dat als de Duitse een probleem heeft de Nederlandse dat ook heeft.

Bovendien worden we gelezen door zowel een Nederlands als Belgisch publiek. Daarom is het bij dergelijke artikel belangrijk dit onderscheid te maken.

[Reactie gewijzigd door TijsZonderH op 24 juli 2024 00:54]

Och. Voorafgaand aan dit artikel had ik op de NOS liveblog gelezen dat die NL app toch nog niet landelijk wordt ingevoerd en dat zat schijnbaar nog in m'n hoofd. Oeps. 😁
Corona-app toch niet morgen landelijk ingevoerd
De CoronaMelder wordt morgen niet landelijk geïntroduceerd. Dat was wel de bedoeling, maar de app kan pas van start als de spoedwet van kracht is en die moet eerst nog door de Eerste en Tweede Kamer worden goedgekeurd.

Minister de Jonge heeft de Tweede Kamer in een brief op de hoogte gesteld. De app, die waarschuwt als je in de buurt bent geweest van een besmet persoon, wordt al een tijdje getest in vijf regio's, waaronder Twente en IJsselland. Hij is bedoeld als aanvulling op het bron- en contactonderzoek.

De Autoriteit Persoonsgegevens zegt dat er een wettelijke basis moet zijn voor het gebruik van de app. In die wet moet vastgelegd worden dat persoonsgegevens alleen worden gebruikt voor bron- en contactopsporing.

De Jonge schrijft ook dat in de wet komt te staan dat het gebruik van de app vrijwillig is. Daar had de Kamer ook op aangedrongen. Restaurants bijvoorbeeld mogen mensen niet weigeren omdat ze de app niet gebruiken.
Is dit weer omdat alle fabrikanten hun eigen accu besparings apps installeren die halfbakken werkt? Het is echt rampzalig hoe slecht die werken, zelfs foregroundservices worden geblockt door sommigen en er is niet een éénduidige manier om het te configureren, dus als ontwikkelaar is het ook haast onmogelijk om dit netjes te regelen. Ik weet niet zeker wat Google hier aan kan doen, aangezien stock Android deze problemen dus niet heeft. https://dontkillmyapp.com/. Wellicht dat ze ooit in een toekomstige versie een API maken zodat je met 1 intent de juiste settings kunt vinden, en wellicht vanuit de app om toestemming kunt vragen om niet gekilled te worden.
Ik word nog helemaal niet warm van hoe het devteam van Google/Android dit aanvliegt, zo ook te lezen in de reacties :(
Ik dacht dat op iOS deze apps een speciale entitlement kregen waardoor ze oa ook een lage 'niceness' krijgen en dus als een van de laatste apps worden afgeslacht als er resources vrij moeten komen.
Volgens de documentatie moet een proces binnen de app elke 4 uur door iOS gestart worden. De CoronaMelder app zelf heeft op de achtergrond weinig te doen op die manier.

Maar daar waren dus ook wat problemen mee. Geloof dat ze dat in de laatste testversies nu wel werkend hebben :).

[Reactie gewijzigd door Glashelder op 24 juli 2024 00:54]

Op dit item kan niet meer gereageerd worden.