/Trippit

An experimental Windows 10 (Mobile) Helsinki DigiTransit client

Primary LanguageC#MIT LicenseMIT

Trippit v1.2.7

The fork of great UWP app named Trippit for my own UI learning/research and cross-platform "dreams" :)

Screenshots

My "1,5 cents" :)

  • Win. os. build -> 19041; Min. Win. os build -> 15063
  • UWP Desktop extension added
  • Ru localization started (30 % ready))

The original worlds of author:

"

About

A UWP HSL Reittiopas app for the greater Helsinki region. Runs on Windows 10 for Desktops and Mobile.

Building

Requirements

Feature Epics

Completed

  • Trip planning
  • Favorites
  • Detailed trip plan
  • Line search
  • Stop search
  • Multi-leg trip planning
  • Show nearby stops
  • Transit service alerts
  • Stop/route tile pinning
  • Crash reporting
  • Analytics

Planned

  • Subscribe to a line, receive notifications when it stops somewhere
  • Testing (really should write unit tests for the GraphQL parser...)
  • Show city bikes on map
  • Allow city bikes in route planning
  • Show journey-in-progress at top of app in the shell

Poorly-documented GraphQL Info

Time and date

Time and date parameters, when requested as strings, are expected to look like this:

date: "2016-05-20",
time: "23:28:00"

I.E. dates are in ISO 8601 format, and times are expressed in 24-hour clock format with colon separators.

When times are returned by the server, they are usually in UNIX-milliseconds timestamp format, encoded as longs.

Formatting

When sending JSON requests, the double-quotes around strings must be escaped in the request. That means backslashes next to the quotes. In the request. Ugh.

Example:

{"query": 
	"{ 
		plan (time: \"2:59:0\"){ }	//note the backslashes and quotes next to the numerals
	}"
}
Transit Modes-The mode parameter

Contrary to the documentation, it's not a string that gets coerced to a masked enum (i.e. "WALK | BUS") but rather a comma-separated list of strings with no spaces (i.e. modes:"BUS,TRAM,RAIL,SUBWAY,FERRY,WALK").

Stupid Platform Bugs and Gotchas Log

  • When using a CollectionViewSource as a ListView's ItemSource and a GroupStyle with a GroupStyleHeader set to HideIfEmpty=True, if (any of?) the underlying lists backing the CollectionViewSource are ever emptied, the next time an element is added to them, the app will hard crash with no exception. Further information on StackOverflow.
  • AutoSuggestBox causes a "Catastrophic failure" exception with no further information if its DisplayMemberPath is set to anything, and the AutoSuggetBox is using an ItemTemplate. Further information found on TechNet.
  • When using localized resources in a separate DLL, the project's .appxmanifest needs to be edited manually to declare supported languages. The magic x-generate token doesn't look in other assemblies to determine what languages the app supports.
  • When using localized resource sin a separate DLL, if you want to use a localized DisplayName or Description or whatever in the .appxmanifest, you give to give it the whole path, like so: ms-resource:DigiTransit10.Localization/AppResources/AppName.

"

References

..

As is. No support. RnD only.

.

[m][e] 2023