I use the Survey123 code sample from appstudio (3.11) and extend it to build my own app. I recently upgraded to this version from an older Survey123 sample. It all works fine except my GeoPoint/Poly capture on a survey only seems to show street basemap only? And when I try to change the basemap the popup for selecting a basemap is empty? I used the cloud build to make this application and on android/appStudio the capture works correctly and defaults to imagery and allows for "Select a basemap" popup to be populated. Not sure how to fix this because I can't debug in AppStudio as AppStudio mobile work on Iphone, but sideloaded ipa is the only way to reproduce this issue. Here are the screen shots of the geopoint capture on iphone sideloaded .ipa file.
Geopoint preview is street map (it should be satellite like it is on android)
When I go into the capture it is street
When I open the Map popup selector it is empty? This is only on IOS sideloaded
Solved! Go to Solution.
I think I found out how to fix my issue on IOS. It seems like this has to do with the kPluginArcGISRuntime for our iphones with osVersion > 12. When i set the defaultMapPlugin back to kPluginAppStudio it works for my iphone running 14.2.
I updated this code in AppSettings and it seems to now work? I actually just rolled back this line of code to what I have in the last version of survey123 code. Has anyone else experienced this???
Comment out this in appsettings
//readonly property string kDefaultMapPlugin: getDefaultMapPlugin()
Add this back in
readonly property string kDefaultMapPlugin: app.info.propertyValue(kKeyMapPlugin, "AppStudio")
@MKa,
For some reason, I can not see the screenshots you provided.
I don't think we have AppStudio version 3.11. Did you mean 3.1? Do you know what version the Survey123 that you used from AppStudio 3.11?
We are currently running AppStudio 4.3, and we are working on releasing AppStudio 4.4 very soon, that means you are building an older version of Survey123 code that was from AppStudio 3.1 against AppStudio 4.3 Cloud Make. There are a lot of changes in both Survey123 and AppStudio since. It might be hard to pinpoint which one, but I would recommend taking a look at the current Survey123 source code that is in AppStudio 4.3 and compare the section where the basemap is being loaded for that part.
Ideally, we want you to stay up to date with changes in Survey123 to update your custom app, since they are a lot of changes and update on the OS and App Stores. If this is not possible, and you are not adhering to the changes in OS and App Stores, maybe you can set up a Local Make so that you can rebuild this using AppStudio 3.1 set of environments.
Thank you,
Erwin
I am using the latest releases of both appstudio and survey123 code. I am using latest appstudio 4.3 with survey123 version code in it which is 3.11. It all works except with the cloud build for iOS. Geopoint and geopoly capture maps work for android and appstudio but iOS version built and then loaded doesn’t have any base maps. It just shows the streets. I have tried to attach the files again.
Can you confirm that the geopoint geopoly survey works on your end for a survey with the iOS build?
using the 3.11 survey123 code in AppStudio
So I was able to get my local build to work and I see the same issue, but on my local build I am not even able to open the capture screen in ios only.
Here is the appstudio (correct) version that I can click on and bring up the geopoint or geopoly capture
Here is the bad iOS version that i cant even click in to bring up the capture screen
I think I found out how to fix my issue on IOS. It seems like this has to do with the kPluginArcGISRuntime for our iphones with osVersion > 12. When i set the defaultMapPlugin back to kPluginAppStudio it works for my iphone running 14.2.
I updated this code in AppSettings and it seems to now work? I actually just rolled back this line of code to what I have in the last version of survey123 code. Has anyone else experienced this???
Comment out this in appsettings
//readonly property string kDefaultMapPlugin: getDefaultMapPlugin()
Add this back in
readonly property string kDefaultMapPlugin: app.info.propertyValue(kKeyMapPlugin, "AppStudio")