Android
Intent
An asynchronous message that activates three of the four component types: activities, service, and broadcast receivers.
Convenience
A mobile app user can access and share information anytime or anywhere. Internet connection is not required for most apps.
Development Environment
A programming environment that has been packaged as an application program.
Personalization
A user can change the settings of the mobile app based on his/her preferences.
Android SDK/ADB/Gradle/ADT plugin/Android studio/Android runtime
Android Development Tools (ADT)
Convenience/Interactivity/Personalization/Speed/Productivity
Benefits of Mobile Application
Android packages
Contains all the contents of an Android app
Android Project
Contains everything that defines the Android app, including both the source code and test code.
Building,Debugging and testing
During this phase, a project is built into a debug- able .apk package that you can install and run on the emulator of an Android-powered device. Next, you debug your application using the debugging tools included in the IDE or provided with the Android SDK. Last, you test your app using various Android SDK testing tools
Publishing
During this phase, the app is configured and built for release and distributed to users.
Setup
During this phase, you install and setup your chosen IDE. This is also where you create an Android Virtual Device (AVD) and connect hardware devices, which you can install your apps.
Development
During this phase, you set up and develop your Android project and application modules (the source code and resource files for your app).
Compability/Screen Size/User Interaction/Screen Density/Phone function Integration/Resource Management
Factors to Consider
Setup/Development/Building,Debugging and testing/publishing
Four (4) Phases of Application Workflow
Activity/Service/Content Provider/Broadcast Receiver
Four (4) Types of App Components
Integrated Development Environment
IDE(literal)
Manifest File
It is an XML file that uses the filename AndroidManifest.xml.
Interactivity
Modern user input goes beyond clicking and typing. Mobile apps are touch-based, allowing users to control the interface through pointer lock and drag and drop actions.
Android Studio/Xcode/Visual Studio
Official IDEs for Mobile OSes
Android apps
Programs that run on the Android mobile operating system.
Android Project files
Provide project-wide settings. These settings apply across ALL modules in an Android app project.
Broadcast Receiver
a component that responds to system-wide broadcast announcements
Service
a component that runs in the background to perform long-running operations or to perform work for remote processes. App users usually don't see them
Application Components
The essential building blocks of an Android app.
module
The first level of containment within a project.
Content Provider
manages a shared set of app data. It allows storage of data in the file system, an SQLite database, on the web, or any persistent storage location that the app can access.
Speed
The need to wait for loading information over a slow Internet connection is eliminated since information is stored within the mobile application.
Android Application Module/Test module/Library module/app engine module
Types of Application Project Modules
Productivity
Users can write, read, and present their reports using only their mobile phones. They can also manage their multimedia files and share to friends through social sites.
Visual Studio
a fully-featured extensible IDE for creating modern applications for Windows, Android, and iOS, as well as web applications and cloud services. This includes features such as Universal Windows Platform development, cross- platform mobile development, and multiple languages support. A Universal Windows Platform (UWP) app can run on any Windows-powered device. Multiple language support allows you to develop mobile apps using your preferred coding language.
Android Developer Tools (IDT) Plugin
a plugin for the Eclipse IDE that extends the capabilities of Eclipse to let you quickly set up new Android projects, create an application UI, add packages based on the Android Framework API, debug your applications using the Android SDK tools, and even export signed (or unsigned) .apk files in order to distribute your application.
Android debug bridge (ADB)
a tool that allows you to connect to a virtual or real Android device. It is a client-server program that includes a client, a server, and a daemon.
App engine module
allows implementation of functionality such as sending push notifications through Google Cloud Messaging (GCM) for Android, etc.
Gradle
an advanced build toolkit that manages dependencies and allows you to define custom build logic.
Operating System
built exclusively for mobile devices such as smartphones, tablets, PDAs, etc.
Test modules
contain code to test your application project and are built into test applications that run on a device.
Android Software development kit (Android SDK)
contains the necessary tools to create, compile, and package Android applications
Android application module
contains your app's source code, resource files, and application level settings. The app module contents are eventually built into the .apk file that gets installed on a device.
Android
created by Google, is one of the most commonly installed mobile OS for mobile devices, with support from various device manufacturers. It is an open source OS, which means developers are given access to unlocked hardware to develop new programs
Windows phone
developed by Microsoft Corporation. Some of its features include apps that update real-time, and full support for Microsoft products such as MS Office.
Library module
holds shared Android sources and resources.
Xcode
includes everything that can be used to create amazing apps for iPhone and iPad. It allows users to build apps and run them directly on their Apple devices. The programming language used is Swift (created by Apple for iOS, OS X, and watchOS development)
iOS
is developed by Apple and is distributed exclusively for Apple hardware (iPhone, iPad, etc.). One of its well-known features is its multi-touch gestures.
Android Runtime
is the managed runtime used by applications and some system services on Android.
Activity
represents a single screen with a user interface. The activities of an app work together to form a user interface
Android Studio
the official IDE for Android App development
Android Studio
the official IDE for Android application development, based on IntelliJ IDEA (a Java IDE). It includes code templates to help build common app features and rich layout editor with support for drag-and-drop theme editing.