Yes, it's a good idea to request documentation from the developer for the Android and iOS app they've developed. Documentation is essential for several reasons, especially if you plan to handle maintenance yourself in the future:
Understanding the Code: Proper documentation provides insights into how the app's code is structured and how different components interact. It will make it easier for you or another developer to understand the codebase.
Bug Fixing and Updates: When issues or bugs arise or when you need to make updates, having well-documented code can save you a significant amount of time. You won't need to rely solely on the original developer's assistance.
Cost Savings: As you mentioned, maintaining the app yourself can reduce costs, and documentation plays a crucial role in this. You won't have to pay a developer for every small change or update.
Smoother Onboarding: If you hire additional developers or team members in the future, clear documentation will help onboard them more smoothly. Documentation will have complete knowledge base what tech stack/platform(https://www.ficode.co.uk/blog/which-mobile-app-development-platforms-should-you-go-for) and libraries developer() have used in the project.
Long-Term Viability: Apps often need updates and maintenance over time to remain compatible with the latest operating system versions and to address security concerns. Documentation ensures the app's long-term viability.
When requesting documentation, ask for the following:
Source Code: Obtain the source code for both Android and iOS versions of the app. This is the most fundamental aspect of documentation.
Architecture Diagrams: Any high-level architecture diagrams that explain how different components of the app interact.
API Documentation: If the app communicates with external services or APIs, request documentation for those interactions. You must be aware about complete API integration services (https://www.ficode.co.uk/api-integration).
User Manual: A user manual or guide can be useful for understanding the app's functionality.
Code Comments: Ensure that the code includes comments and explanations for different parts of the codebase.
Dependencies and Libraries: Document the third-party libraries and dependencies used in the app.
By having this documentation in your possession, you'll be better equipped to manage, update, and maintain the app independently, which can indeed reduce long-term costs and ensure the app's continued functionality.