Mobile Technologies
Introduction
- Teacher: Raymund O’Connor
- Email: raymund.oconnor@csn.ie
IT Rule & Regulations
- From Student Handbook on www.csn.ie
File Management
- Create a folder for each component (files and folders)
- As Office365 expires when you finish in CSN I recommend to Backup to Google Drive, iCloud, Dropbox, etc
- Outlook basics (attachments / calendar / etc)
- Create PDF using OneDrive and camera app
- Moodle (logging in and submitting assessments)
- Video Recording(screen capture) on your smartphone
Assessment
- Skills Demo 1 – 20%
- Skills Demo 2 – 30%
- Skills Demo 3 – 20%
- Written Exam – 30%
- Project Plan Project – Skills Demo Plan
Resources
- Free courses from Google – https://developer.android.com/courses
- Video lectures – https://www.youtube.com/watch?v=oWTG5g5rT4s
- Free eBooks – https://goalkicker.com/
Component
- Mobile Technologies 5N0580 V3 Amended Sept 2016 – downloaded 22/9/2020
Classes
- Anatomy-of-a-mobile-app-ebook – Deloitte Report 2019 – Statista Reports
- Make money with apps
- How many people in class have a smartphone? (Android/Apple/Windows/What is your favourite or most used app?
- 2014 Top 20 mobile apps
- Mobile Phones Operating Systems (OS)
- Smart phone comparison (resolution, processor, etc)
- Samsung Galaxy S6 tech spec
- Android Design Principles – http://developer.android.com/design/get-started/principles.html
- Delotte Report DAE – AMTA report 2013
- Wire frame diagrams (Microsoft Word) or Draw https://www.draw.io/
- 10 Wireframe Diagram
- Android 9 Pie – https://developer.android.com/
- Create account with https://www.netacad.com/ and download Cisco Packet Tracer (under Resources menu)
Section 1: Mobile Technology Awareness
A critical appraisal of the use of mobile technologies in every day life will be complimented by a review of the:
- enabling technologies for example Bluetooth, Near Field Communications, Wifi, GPS
- technical features and capabilities of current mobile devices for example screen resolution, processor capability, storage & connectivity options
- Screen Resolution
- 1-5 Mobile technical specifications
- 1-6 Storage
- Useful graphs http://www.pwc.com/gx/en/industries/technology/mobile-innovation/mobile-device-technology-components.html
- Manage App/System memory – https://www.youtube.com/watch?v=2bCkVmSmxC4
- key design principles that are considered relevant to the success and usefulness of mobile applications for example speed, usability, adherence to design principles set out by device designers, uniqueness in marketplace, availability across platforms.
Section 2: Mobile Device Networking & Management
A practical exploration of mobile networking and device management that considers for example:
CISCO Packet Tracer – Signup and download from netcad.com at https://www.netacad.com/courses/packet-tracer
- Log in to the Cisco Netacad.com learning environment (https://identity.cisco.com/ui/tenants/global/v1.0/enrollment-ui)
- Select Resources > PacketTracer
- configuring a wireless by router and adjusting common settings for example: DHCP, Wireless-Encryption options, MAC/IP Address filtering, port filtering and web content filtering – 2-1 Configuring Wireless Router
- Introduction to TCP/IP address etc
- 0 Modem ZYXEL-install-and-wireless-set-up
- 2-1 Wireless Encryption
- CISCO Packet Tracer Student version – 1 CISCO Packet Tracer
- Configuring 0 WRT300N Wireless Router Configuring
- MAC address filtering
- DHCP configuration – DHCP settings and Exercise
- connecting mobile devices to an appropriate data network – 2-2 Connecting to Data Network
- Video – Check storage space on your smartphone
- Video – Connecting to Internet using Wifi
- installing applications on a mobile device – 2-3 Installing Mobile Apps
- Video – Installing an Android app
- updating applications on a mobile device – 2-4 Updating an Android App
- considerations and procedures of performing system updates on a mobile device – 2-5 System Updates
- Introduction to Cellular wirelss Networks
- Kaspersky_Lab_Whitepaper_MDM_eng_final
- Mobile_Architecture_Guide_v1.1
- Mobile_Device_Management_Key_Components
- AirWatch_brochure_mobile_device_management
- Mobile Device Management ds_maas360_mdm_overview
- 4.1 In-House App Development
Videos (CISCO Packet Tracer)
- Renaming devices and switching Wifi on/off using Packet Tracer
- MAC Address filtering
- Security Level and Encryption
Exercises
- CISCO Packet Tracer – Exercise
- Exercise-using-to-Smart-Device
- CISCO-Packet-Tracer-Exercise 2
- Skills_Demo_3_Template
Skills Denmo 3 – Skills Demo 1 – Sample
Skills Demo 3 Practice Test – Skills Demo 3 – Practice Test
Section 3: Mobile Application Design
- 20 Mobile Apps – Design Tips
- 0 Interactions
- 0 Ergonomics
- 0 Gestures
- 0 Transitions and navigation Activity Transition sample 1 – Activity Transition Sample 2
- 15 Activities – Lifecycle
Graphics play a major role in UI (User Interface) and UX (User Experience)
- Adobe XD (free software) – excellent for image/background design. See video tutorial
- Adobe Photoshop is the best image edited software available but it is costly. Gimp is a free open source application as a replacement for Photoshop but Adobe XD is very useful for preparing images and sizes for including in your app.
Prototype app design using Adobe XD
- Activity Design Video – Designing an Activity using Adobe XD
- Add Second Activity Video – Multiple Activities with Icons from https://material.io/resources/icons
- Transitions in Prototype app Video – Linking activities with transitions to create a prototype app
Exercises
- Exercise – Design a prototype app for Dublin based software company
- Ray’s Sample Solution – Prototype App
Section 4: Mobile Application Development
Mobile application development requires development tools for implementation. Practice in the form of tutorial classes and lab time on the relevant Integrated Development Environment (IDE) is required. The correct configuration of IDE application and simulator can be complemented with the production of a pre-prescribed mobile application demonstrating for example:
UI Design Video – https://www.youtube.com/watch?v=oWTG5g5rT4s
- user interface design considerations for the development platform and the required functionality of the application http://www.google.com/design/spec/layout/structure.html
- use of local and networked data stores for accessing content and media resources e.g. images, audio and video files
- use of APIs for handling and accessing resources such as data, images, animations, audio & video.
- exploration of programming concepts such as classes, methods & attributes, selection and repetition using code snippets for handling events and user interactions.
- completion of a project plan detailing user requirements, hardware requirements, application compatibility and possible future development.
- https://developer.android.com/intl/ja/training/index.html
Exercises & Videos
- Introduction to Android Studio and adding your AVD (Android Virtual Device) – Android Master class – https://www.youtube.com/watch?v=fis26HvvDII (by https://meicode.org/)
- A knowledge of Java is recommended for Android App development – http://www.tutorialspoint.com/java/index.htm
- The New Boston videos https://www.thenewboston.com/videos.php?cat=31
Design Phase
- Material Design – sample colour schemes. Demo Material Design video
- Material Design website – https://material.io/
- Adobe XD is ideal for building a prototype of you app before you start creating your app in Android Studio
- Use Adobe XD to design the prototype in this exercise – UI Design – Nice Design Layout with Colour
- XD link https://xd.adobe.com/view/25c6e313-3798-464b-8233-07770a802829-7095/
Implementation Phase (using Android Studio)
- Coding in XML – Linear Layout with Background image
- Exercise 0 – screenshot
- Exercise 1 – it is good practice to write the XML code in the Code view in Android Studio. You need to be familiar with XML code especially in relation to answering questions in the exam. You should be able to write basic xml code.
- Exercise 2
- Exercise 3
- Exercise 4 – Grid Layout
- LW Exercise Determine exact colour hex code using: imagecolorpicker.com
- Layouts and Click Events
- Welcome User App – NEW.
- An intent is used to perform an action on the screen. It is mostly used to start activity.
- Multiple Activities
- CSN College App – Activities – ScrollView -AutoLink – OnClickListener – NEW – watch video of working app
- Add 1 or Subtract 1 from Counter
- Add 2 Numbers
- Area of Square
- MeanAges
- Background Image – Action Bar – Title – NEW
- Changing ActionBar and Titlebar Color – NEW
- HerdWatch app
- Formatting Numbers and Currencies – Another Example: Formatting Output – Currencies – Decimals
- Image Buttons – Icons – Toast – Table and Constraint Layout Exercise
- Toast Notifications
- What is Context or getApplicationContext? Video
- Exercise – Volume of a tank and length of all edges
- Centimeters to Inches Converter
- Layouts – Background Image and Music
- 1 Basic App UI Design
- onStart Method = Referencing Views – ALT INSERT – Click_Events_1
- Tip Calculator
- Transitions Activity_Slide_Example Transitions_Animations
- Transitions
- Gestures (working version) – Gestures (older version)
- Video Clip – Playing a Video clip in your Android app (If raw is highlighted in red(eg error) then rebuild your app)
- Multimedia App Exercise:
- Multimedia App Solution: Multimedia App – including source code
- Flow Charts https://www.gliffy.com/
- Listview Container
- Spinner Code (old versions)
- Spinner NEW Spinner
- Flip Coin Animation Image 1: Image 2:
- Add – Subtract – Multiply – Divide Calculator
- 60 Video Ensure mp4 file name is lowercase letters to avoid errors
- Saving Data to Cloud Storage using Parse
- Google Maps API setup tutorial – https://developers.google.com/maps/documentation/android-api/start – Useful video Kotlin
- Video: How to create a Google Maps Activity
- Java source code: Google Maps Zoom Animation
- Fragment
- ScrollView – Create new project and select Scrollview Activity(edit text provided)
- SplashScreen video – https://youtu.be/JLIFqqnSNmg
- Navigation Drawer – https://www.youtube.com/watch?v=zwqzhY5i2rc
- SQLite database http://www.techotopia.com/index.php/An_Android_Studio_SQLite_Database_Tutorial
- An Android Studio SQLite Database Tutorial
- http://www.vogella.com/tutorials/AndroidSQLite/article.html#overview_sqlite
- CalendarView
- Installing an Android app
- Updating an Android app
- 2-0 Mobile Device Networking
- 1 CISCO Packet Tracer
- VIDEO – Connecting to Wireless Router CISCO
- App layout and design using ScrollView/Linear Layouts/etc – Cork Tourism App
Team/Group Challenge
SQLite Database
- 0 SQLite Database – Sample Product database An Android Studio SQLite Database Tutorial – Product DB
- Exercise: Student Database App
- Patient SQL db app Source code – Patient SQL db App
Firebase (Google Apps – ReadTime Db, Analytics, Notifications, etc)
- Video: Create and Save to RealTime Database
- Simple App connected to Realtime database – Storing Data from your app to Firebase RealTime Database in the cloud
- Firebase provides excellent code labs at https://codelabs.developers.google.com/
- 0-Android-Apps-and-Firebase-tutorial
- Firebase Notifications
- Steps to connect Firebase and AS
- Real time database – Saving data from Android app to Realtime Database using Firebase
- Read this – Adding Firebase Services to Android Apps – RayHealthApp – NEW
- Delete data from Firebase Realtime Database – NEW
Saving data from Android app to Realtime Database using FirebaseDownload
FLUTTER : Next step use FLUTTER (from Google) to build Android/iOS/web/etc cross platform apps.
Exercises – Class Evaluation – Feedback
APK files
- Download and install ARC Welder for Chrome to test .apk quickly or use emulator in Android Studio
- https://www.youtube.com/watch?v=nHaep1HBIwM
- Photo Gallery accessing images on your device https://www.youtube.com/watch?v=gOQnzTBR7wA
Exporting your app (.apk file)
- Click Build – Generate Signed APK – Create new – select AndroidStudioProjects and type name and password – proceed
Future of smart phones and technology
Online Tutorials and Videos
- http://www.vogella.com/tutorials/AndroidIntent/article.html
- https://www.thenewboston.com/videos.php?cat=278&video=27338
- http://www.tutorialspoint.com/
Professional UI Design videos
- https://www.youtube.com/watch?v=0g2wTsCTkD0
- Pro design and layout of app
- Modern UI design video – https://www.youtube.com/watch?v=9QOg8R8ol1w
eBook
Design – http://developer.android.com/design/index.html
Android – http://developer.android.com/index.html
Download and install Android Studio on your computer