Chapter 1- Mobile Application Development Introduction-java.pptx
Amdework4
41 views
26 slides
Jul 31, 2024
Slide 1 of 26
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
About This Presentation
Mobile App Development
Size: 2.63 MB
Language: en
Added: Jul 31, 2024
Slides: 26 pages
Slide Content
1 1 Chapter One 1 By Amdework Asefa Mobile Application Development
Contents Short Introduction about Mobile App Dev’t Mobile App development tools and services ( android vs iOS ) Android V ersions C hallenges of Android app development App fundamentals : Android App File Structure , UI Architecture & Components 2
Mobile Application Development Mobile device: more than simple call and website access. According to Statista there are 17.72 billion mobile Devices worldwide in 2024. Recent study shows >50% of Googling happens via smart-phones. Mobile is needed in every business which has given the kicking start to mobile app dev’t . Mobile app dev’t : is the process of creating software apps that run on a mobile devices (Phones, tablets, watches, TVs, and Cars).. 3
What is Android? Android is an open-source, Linux-based mobile operating system developed by Google. Is a User Interface for touch screens Highly customizable for devices / by vendors 4
Major Mobile Development Tools and Services Android: Android Studio, Firebase iOS : xCODE AppCode 5
Differences between Android and iOS 6 Android iOS Developed by Google. Designed to run on a variety of hardware platforms Based on the Linux kernel Completely open source Covers >75% of the market Over 4.67 Million Android apps in Google Play store Developed by Apple. Designed to run only on a specific set of apple devices. Unix Kernel called Mach Limited many features of its platform and source code Covers >18% of the market Over 1.81 Million iOS apps in Appstore
Android Studio 7 Official Android IDE Used to Develop, run, debug, test, and package apps Has Virtual devices, Project views and Visual layout editor
Google Play store After you complete development You can Publish your apps through Google Play store: Official app store for Android Digital distribution service operated by Google 8
Android versions 9 Codename Version Released API Level CupCake , Donut, Eclair 1.5 -2.1 2009-2010 2-9 Honeycomb 3.0 - 3.2.6 Feb 2011 11 - 13 Ice Cream Sandwich 4.0 - 4.0.4 Oct 2011 14 - 15 Jelly Bean 4.1 - 4.3.1 July 2012 16 - 18 KitKat 4.4 - 4.4.4 Oct 2013 19 - 20 Lollipop 5.0 - 5.1.1 Nov 2014 21 - 22 Android History and Platform Versions for more and earlier versions before 2011
Android versions ( Latest ) 10 Codename Version Released API Level Marshmallow 6.0 - 6.0.1 Oct 2015 23 Nougat 7.0 - 7.1 Sept 2016 24 - 25 Oreo 8.0 - 8.1 Sept 2017 26 - 27 Pie 9.0 Aug 2018 28 Android version 10, 11…. 10, 11, 12, 13 Sept 2019-22 29-33 Android version 14 14 2023-24 34 Android 10 is the first numeric version….
How to Develop Android app? Learn Programming and Markup Language s; Java, Kotlin/ Flutter with XML Uses the Android Software Development K it (SDK) Development tools /IDE (debugger, monitors, editors) Libraries, Frameworks (maps, wearables) Virtual devices (emulators), Physical phones Documentation (developers.android.com) Practice! Practice! Practice! 11
Challenges of Android development Low HW performance and inconvenient Dev’t Env’t Compatibility : run on older version, screen size & resolution Performance : make your apps responsive and smooth Security : keep source code and user data safe Marketing : understand the market and your users It doesn't have to be expensive, but it can be 12
Developer workflow basics Set up your workspace : Install IDE, and create project Write your app : write code, design a UI, & create resource Build and run : install and run on the emulator/device. Debug, profile, and test : test your app in Android Studio. Publish : make your app accessible. 13
Android Development Tool User Interface 14 1 2 3 5 4 6 7 8 9
Tool window bar : Use the buttons on the outside of the IDE window to expand or collapse individual tool windows. Tool windows : Access specific tasks like project management, search, version control, and more. You can expand them and collapse them. Navigation bar: Navigate through your project and open files for editing. It provides a more compact view of the structure visible in the Project window. Main Menu: has main settings, setups and properties to control the project. Editor window: Create and modify code. Depending on the current file type, the editor can change. For example, when viewing a layout file, the editor displays the Layout Editor. Design Window : Used to design GUI Toolbar: Carry out a wide range of actions, including running your app and launching Android tools. Status bar: Display the status of your project and the IDE itself, as well as any warnings or messages. Test Tool Windows Bar : used to create AVD, validation, notification, and gradle 15
Android application structure building blocks AndroidManifest.xml: information about app for the runtime Java/Kotlin Folder: contains the Java/ kotlin source code drawable folder: contains resource type file layout: defines the visual structure for a user interface mipmap Folder : contains Image Asset files. E.g. Launcher, Tab Icon colors.xml file : contains color resources theme.xml file : contains string resources styles.xml file: contains resources of the theme style build.gradle (Module: app): defines the module-specific build configurations. ….. 16
Intent Intent : Is a special class to move from screen to screen. It describe what an application wants done. Used in Explicit intent IntentFilter : is an expression in an app's manifest file that specifies the type of intents that the component would like to receive. Used in implicit intent. The two most important parts of the intent data structure are the action and the data to act upon. 17
Activity Lifecycle In Android, an activity is referred to as one screen in an application. It is very similar to a single window of any desktop app. An Android app consists of 1 or more screens/ activities. Each activity goes through various stages or a lifecycle and is managed by activity stacks. So when a new activity starts, the previous one always remains below it. 18
Activity Lifecycle .. There are four stages of an activity. Active/Running Activity : if it is on the top of stake (Foreground) A lost focus and a non-full-sized or transparent activity : Either another activity has a higher position or the activity itself is not focusable in the current window Hidden activity : If an activity is completely hidden by another activity, it is stopped or hidden. It still retains all the information, and will often be killed by the system when memory is needed elsewhere. Dead/Idle Activity : completely killed or not started yet activity 19
UI Components User Interfaces (UI) in Android can be built within two ways, by defining XML-Code or by writing Java-Code. Defining the GUI structure in XML is highly preferable, Jetpack Compose (Kotlin) is more preferable. Based on the Model-Viewer-Control principle that the UI should always be separated from the program-logic. Adapting a program from one screen to another is a lot easier. 20
Android UI Components Activities : is single displayed window. (J)Frame in Swing. Views : Building block of UI. includes controls. (J) Components in Swing. TextViews : used to display text to the user. (J)Labels in Swing. EditTexts : A predefined subclass of TextView that includes rich editing capabilities. (J) TextFields in Swing. ( AutoCompleteTextView ) Buttons : A push-button that can be pressed, or clicked, by the user to perform an action. (J)Buttons in Swing. 21
Android UI Components... ImageButton : is single displayed window. (J)Frame in Swing. ImageButton CheckBox : An on/off switch that can be toggled by the user to select a group of selectable options that are not mutually exclusive. ToggleButton : An on/off button with a light indicator. RadioButton : has two states: either checked or unchecked. RadioGroup : used to group together one or more RadioButtons . 22
ProgressBar : provides visual feedback about some ongoing tasks, such as when you are performing a task in the background. Spinner : A drop-down list that allows users to select one value from a set. TimePicker : Enables users to select a time of the day, in either 24-hour mode or AM/PM mode. DatePicker : Enables users to select a date of the day. ….. And so on… 23
Learn more Android History Introduction to Android Platform Architecture UI Overview Platform Versions Supporting Different Platform Versions Android Studio User’s Guide 24
What's Next? 25 Chapter Two: Notification, Menus and Dialogs