Please enable JavaScript.
Coggle requires JavaScript to display documents.
mobile development - Coggle Diagram
mobile development
OS
Android
Language: Primarily Java or Kotlin
Target Devices: Wide range of smartphones and tablets from various manufacturers
Marketplace: Google Play Store.
Development Environment: Android Studio IDE
Cross-platform frameworks
Flutter
Developed by Google, uses the Dart programming language and offers a single codebase for building high-performance native apps for iOS and Android
Xamarin
Owned by Microsoft, allows developers to build apps for iOS, Android, and Windows using C# and .NET
React Native
Developed by Facebook, allows you to build mobile apps using JavaScript and React. It can target both iOS and Android platforms.
Ionic
Uses web technologies like HTML, CSS, and JavaScript to build cross-platform mobile apps. It's built on top of Cordova and Angular
IOS (Apple)
Language:C or Swift.
Development Environment: Xcode IDE
Target Devices: iPhones, iPads, and iPod Touch
Marketplace: App Store
Components
Layouts
the structure and arrangement of user interface elements
Widgets
Buttons
text fields
sliders
Views
building blocks for user interfaces
TextView
ImageView
Push Notifications
to engage users with timely updates
User Experience
Navigation
how users move between different screens or sections of the app
Animation
user experience with visually appealing transitions and effects
Deployment
App Store
Play Store
Cross-platform frameworks VS Native development
Advantages
Cross-platform
Faster Development
Code Reusability
Single Codebase
Native dev
Performance
Access to Platform Features
Disadvantages
Cross-platform
Performance Overhead
Limited Access to Platform Features
Native dev
Development Time
Skill Requirements
Maintenance
Device Features
Camera
GPS/Location services
Sensors
DATABASE
Local storage
SQLite
Cloud storage
FIREBASE
AWS
Structure of a native mobile app
App directory
java
activities
fragments
models
services
res
drawable
layout
values
mipmap
Manifests
which declares essential information about the app, such as permissions, activities, services, and more
Gradle Scripts
build.gradle (Project)
build.gradle (Module: app)
Gradle Wrapper
Contains files necessary to run Gradle commands using the Gradle Wrapper