I have updated from iOS SDK 100.10 to 100.12, and now some features are not rendered at some scales. I have attached a video. This is the workflow (times referring to the video):
1. (t=5s) A hosted feature layer with 6 features is loaded and a zoom to that layer extent is done. That is the only feature layer loaded on the map. A feature (right-most) is selected. Everything is OK. The feature layer is public, this is the URL.
2. (t=9s) Now we clear the selection, a new feature (the left most one) is selected. The feature disappears from the view. No error is returned.
3. (t=17s) After a couple of zoom outs... the feature is rendered again, even it is selected. Now I can zoom in again and it is still there.
This video if from the Xcode simulator, but the same can be reproduced with a physical device (tested on iPhone 11). I tried to simplify the geometry of that layer (just in case it has some geometry error), this is the new one, but I get the same behaviour.
The same app, with the same layer and code is working fine with iOS SDK v100.10.
Has anyone seen anything like this?
The video shows the problem clearly.
Unfortunately, we are not able to reproduce it, using your public service. It's definitely something we'd like to investigate. Could you provide a small repro app, or some code snippets showing how you setup and display the map, and also the code to perform identify and selection - perhaps the issue is only repro with a certain sequence of API calls.
In the meanwhile, you could explore changing the preferredPolylineFeatureRendingMode on the map's loadSettings . See if setting that to dynamic helps.
changing the preferredPolylineRenderingMode to dynamic makes no difference.
I have also changed the order of the elements. If I start selecting the left-most feature, then the right-most one, the behaviour is the same: the second one is not rendered until the user does a zoom/pan. So it looks like something related to the sequence of calls, as you said.
I will try to create a small repro app just with this issue.
The problem here turned out to be that the user code was querying the feature table but asking for geometries to be excluded from the result. Consequently, the features that were returned by the service didn't have geometries and couldn't be displayed on the map.