Emulation mode for SDKs (JS/iOS/Android) support
So I guess another way to look at this would be to have a 'emulation mode' and filter out fields that are not supported on certain platforms. So if 'iOS emulation' was selected a number of fields would be disabled and marked as so in the editor.
My thinking is that listing what is supported might not be that helpful, because ultimately you want to target a style at a set of platforms. So if a feature is missing from a platform you want to see how that will effect your style.
Questions?
- Does that make sense?
- Is there something obvious I'm missing as to why that wouldn't work?
- Any other thoughts?
Does that make sense?
In general yes.
Any other thoughts?
-
What happens if a style with unsupported features is used with iOS/Android/macOS? Are they ignored or is the style not working in general?
-
There are also differences regarding what kind of features are supported within one platform, e.g. see SDK support for GeoJSON sources. So you would need a lot of different emulation modes.
-
It would be a lot of work to keep this all up-to-date with the style spec, in my opinion not possible to do it manually. Such emulation modes would need to be synced automatically with the style spec.
What happens if a style with unsupported features is used with iOS/Android/macOS? Are they ignored or is the style not working in general?
That's my understanding, we'd need to check though
It would be a lot of work to keep this all up-to-date with the style spec, in my opinion not possible to do it manually. Such emulation modes would need to be synced automatically with the style spec.
We have this information from the style-spec already, for example https://github.com/mapbox/mapbox-gl-js/blob/master/src/style-spec/reference/v8.json#L1019-L1025
There are also differences regarding what kind of features are supported within one platform, e.g. see SDK support for GeoJSON sources. So you would need a lot of different emulation modes.
True, I guess that's also true of the web target currently also though
True, I guess that's also true of the web target currently also though
Maybe it would be sufficiant to have an emulation mode only for the latest release of each platform.
@orangemug this issue remains open because of the emulation mode, right?
Correct @pathmapper, although I don't think it's something we should prioritise anytime soon.
Thanks @orangemug, updated the issue title.
And yeah, I also think this is something for later.