Whatever apps we see, whether Android apps or iOS apps, these are the main categories of two categories.
A: View-heavy or data-driven apps such as Social app like Facebook, Twitter etc, Messenger, News app, Note etc. Most of these apps have text, images, etc.
Two: Graphics-heavy app Games, Creative Art, Photo Editing
To create data retrieval apps, the concepts that need to be clearer are:
1. Views: Common Controls and View Layout
2. Events: Interaction and Event Handling
3. Navigation: Screen Flows and Navigation
4. Data: Models, Networking and Persistence
5. Platform: OS Services, Hardware, Accessing Sensors
Some apps may use all the concepts. Some apps may use two concepts.
Views show data. The names of views may differ on Android or iOS, but the work is the same. Plain Text to show text on Android, that is the label at the IOs.
The events are organized by clicking on what will happen. Screen navigation is the same as the Navigation main concept. Maybe two types of names on two mobile operating systems
Data source can be text files, from database, maybe from JS server or XML format in web server. If the data source is a web server then it is necessary to call the network again. Whatever data comes in the format, in a common format it has to be converted. Usually it’s called modeling.
Some apps also work off even if you close it. Such as Skype or messaging apps, alarms etc. These are needed for services. Even if you close the app, the operating system can do specific tasks. We need hardware, such as sensors, cameras etc. All these topics are more in Data Driven apps.
Today’s data usage is more used to send data from data sources to DRIVE apps. JSON Format This process is known as REST API. To create this type of app, you can easily create an app if you have an idea about networking, data serialization, decryualization, model, view, controller.
Concept of Graphics-heavy apps is somewhat different. Like these canvas, OpenGL, etc. Games are usually Graphics-heavy apps. There are many libraries or frameworks to make this type of app easy to make. Unity, LibGDX, Unreal Engine, Cryengine, Heroengine etc.
I do not know what will happen in the future, but it will be the most intelligent task to choose mobile app development to do better now. There is a lot of free resources on the Internet, no matter what kind of apps you want to create. Now just left to learn. The rest is applied to learn. Keep learning, good luck