Hallo beste tweakers!
Ik ben bezig met een app in Xamarin C# en nu specifiek met gps in de background op UWP.
Het is de bedoeling dat de route van de gebruiker bijgehouden wordt, ook als de app suspended is.
Dit werkt op zich al aardig, maar ik kwam er achter dat ik niet bij de data van de app kan. Dit komt omdat de background task op een apart proces draait.
Mijn vraag:
Hoe kan ik vanuit mijn background task mijn gewone data veranderen/updaten?
Het liefst zou ik iets als dit willen:
Ik kan wel oplossingen bedenken om dit probleem te omzeilen, maar dat zijn allemaal passieve methodes.
De UI wordt de hele tijd geüpdate met die data. Als ik bijvoorbeeld een bestand ga maken om het tijdelijk in op te slaan, dan moet ik in de foreground de hele tijd gaan zitten scannen op nieuwe data.
Ook andere oplossingen, zoals het gebruik van een socket, is niet handig omdat de foreground hiervoor actief moet zijn.
Ik hoop dat iemand me in de juiste richting kan sturen om dit op te lossen.
Dion Dokter
...
Ik ben bezig met een app in Xamarin C# en nu specifiek met gps in de background op UWP.
Het is de bedoeling dat de route van de gebruiker bijgehouden wordt, ook als de app suspended is.
Dit werkt op zich al aardig, maar ik kwam er achter dat ik niet bij de data van de app kan. Dit komt omdat de background task op een apart proces draait.
Mijn vraag:
Hoe kan ik vanuit mijn background task mijn gewone data veranderen/updaten?
Het liefst zou ik iets als dit willen:
C#:
1
2
3
4
| //In de background Geoposition Position = await Geo.GetGeopositionAsync(); LocationTracker.PositionChangedCallBack(Position); // De callback is assigned in de foreground, maar is null in de background. |
Ik kan wel oplossingen bedenken om dit probleem te omzeilen, maar dat zijn allemaal passieve methodes.
De UI wordt de hele tijd geüpdate met die data. Als ik bijvoorbeeld een bestand ga maken om het tijdelijk in op te slaan, dan moet ik in de foreground de hele tijd gaan zitten scannen op nieuwe data.
Ook andere oplossingen, zoals het gebruik van een socket, is niet handig omdat de foreground hiervoor actief moet zijn.
Ik hoop dat iemand me in de juiste richting kan sturen om dit op te lossen.
Dion Dokter
...
[ Voor 0% gewijzigd door diondokter op 01-08-2016 13:03 . Reden: typo ]