I'm currently migrating my complete Android app to the new API 100.0.0.
Otherwise, I am now almost done with the migration ...
I licensed my app, included Esri attribution in the "About" screen of my app, and I do not use an ArcGIS Online basemap. But unlike in the old API, the Esri attribution bar ("powered by Esri") is always visible (and I must say, I find it quite irritating...). Can I disable it somehow? Is it included in all license levels?
You can use MapView.setAttributionText(boolean) to determine whether that grey bar on the bottom of the mapview is visible or not:
Here is the documentation for this:
I would use MapView.getCurrentViewpoint(Viewpoint.Type) to get the viewpoint when you pause the map, following that with Viewpoint.toJson() so you can store the viewpoint in shared preferences or wherever you would like. You can then rebuild the viewpoint by calling Viewpoint.fromJson(String) and then passing that viewpoint to your mapview object.
When I add and remove graphics dynamically, it occasionally happens that a removed graphic is still being displayed. I checked the size of the corresponding graphicsOverlay - it is empty, and the graphic cannot be selected. So maybe the graphic is cached somehow? Is there any way to refresh the graphicsOverlay to clear the cache?
This is interesting... I am going to have to try this and see if I can reproduce. I have another app that I wrote where I remove graphics and they no longer display.
Hope this helps!
Thanks, this helped me a lot!
The bar on the bottom is invisible now and the "Viewpoint.toJSON" solution also works fine.
Now I just need to find a solution for the graphics problem. The entire workflow in my app is a bit complicated: POIs are displayed by a feature layer on top of my map to provide a general overview of their locations. If a user clicks on a POI feature which lies inside a building polygon, the POI feature layer is set invisible and instead graphics (with the same symbols and attributes as the features) are added to a graphicsOverlay for all POIs which are on the same floor in the selected building (based on a overviewLayer.getFeatureTable().queryFeaturesAsync query). Maybe the error can be found somewhere within this workflow... I will try to figure it out.