Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots •...
Transcript of Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots •...
![Page 1: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/1.jpg)
James Noble
Richard Mumford
Survey123 for ArcGIS: for Developers
![Page 2: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/2.jpg)
Summary
• What is Survey123?
• Why and how to extend it
• Introduction to AppStudio
• Re-branding Survey123
• Adding custom functionality
![Page 3: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/3.jpg)
Richard Mumford
What is Survey123?
![Page 4: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/4.jpg)
Survey123
Form-centric data collection
Smart forms with built-in logic
Web and mobile
Works disconnected
Part of the Geospatial Cloud
![Page 5: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/5.jpg)
Survey123
Surveys
![Page 6: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/6.jpg)
Survey123
Surveys
Surveys define data, logic and experience for a particular use case
Survey123 app interprets and displays the user’s surveys
![Page 7: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/7.jpg)
James Noble
Extending Survey123
![Page 8: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/8.jpg)
Ways to extend Survey123
Functionality
Co
mp
lexi
ty
Re-brand the app
Themes
Survey123 Web Designer
JavaScript Functions
Embedding into Web Apps
Python
Webhooks
Survey123 Connect / xlsx
Modifying the source codeAppStudio
Add-Ins (coming soon)
![Page 9: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/9.jpg)
Add-Ins
• Created using QML/Qt Creator
• Add-Ins are backwards compatible, and are supported by all platforms of the field app
• Avoid maintenance issues
• Can be pushed to users without re-releasing an app
• Stored as an ArcGIS Online item
• Downloaded via the field app settings
![Page 10: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/10.jpg)
Types of Add-In
Tab/Tile Mode
• User interface
• Launched on start-up, or from another Add-In
- Open/edit a survey from a map view
- Adding an assignment to a survey
Service Mode
• No user interface
• Automatically started
• Run in the background- Location tracking
- Data updates
![Page 11: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/11.jpg)
Modifying the source code – Whys and Why Nots
• Why- Re-Branding- Create a new app- Modify existing functionality- Add specialized functionality- Simplifying UX- Focussing workflows- Automate processes
• Why Not- Maintainability- Keeping up with changes to
code
![Page 12: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/12.jpg)
AppStudio for ArcGIS
• A tool to create geoenabled cross-platform native apps
• Tools for Building and Testing Apps
• Extending Survey123 requires AppStudio Standard License
AppStudio Player
Console Window
Cloud Make
Qt Creator
![Page 13: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/13.jpg)
iOS
Android
Linux
Windows
Mac
One App
![Page 14: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/14.jpg)
Richard Mumford
Demo: AppStudio Tour
![Page 15: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/15.jpg)
James Noble
Rebranding Survey123
![Page 16: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/16.jpg)
Seal Spotting in Helgoland
![Page 17: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/17.jpg)
Introducing Seal Surveyor!
Courier New
![Page 18: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/18.jpg)
Introducing Seal Surveyor!
![Page 19: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/19.jpg)
AppStudio
• Icon
• Splash screen
• App color scheme
Rebranding Survey123
Qt Creator
• Image assets
• Text elements
• Buttons
![Page 20: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/20.jpg)
James Noble
Demo: Re-Branding
![Page 21: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/21.jpg)
Richard Mumford
Adding custom functionality
![Page 22: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/22.jpg)
Survey123
Surveys
![Page 23: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/23.jpg)
Survey123
Surveys
Define a new component in the survey
Add code to Survey123 so it can interpret the new component
![Page 24: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/24.jpg)
AppStudio Stack – Custom Survey123 App
AppStudioAppFramework
Qt Quick Framework
ArcGIS Runtime API
Custom CodeQML + JS + Assets
![Page 25: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/25.jpg)
Richard Mumford
Demo: custom functionality
![Page 26: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/26.jpg)
Summary
• Extending is approachable
• 90% of the work is done for you!
Reminder:
• Use COTS when you can
• Extend when you can’t
• Code when you need- Maintenance
- Check the roadmap!
![Page 27: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/27.jpg)
Resources
• https://doc.arcgis.com/en/survey123/reference/configuresurvey123withappstudio.htm
• https://www.esri.com/en-us/arcgis/products/appstudio-for-arcgis/resources
• https://community.esri.com/groups/survey123/blog
![Page 28: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/28.jpg)
Complete answersand select “Submit”
Scroll down to find the feedback section
Select the session you attended
Download the Esri Events app and find your event
Please Take Our Survey on the App
![Page 29: Survey123 for ArcGIS: for Developers...Modifying the source code – Whys and Why Nots • Why-Re-Branding-Create a new app-Modify existing functionality-Add specialized functionality-Simplifying](https://reader031.fdocuments.us/reader031/viewer/2022011823/5ed08ff8bab34719bb2d16fb/html5/thumbnails/29.jpg)