All work must be submitted on time!
All lecture notes can be found on D2L.

Download Syllabus

 Week Topic Textbook Chapter Videos / Links HW Due
1: (Jan 12) Introduction to Android Development Chapter 1 (Android Textbook) Videos on Android Studio:

  1. FirstAndroidApp
  2. FirstAndroidApp-Emulator
2: (Jan 19) Building Interactive Apps Chapter 2 Videos on Interactive Apps:
  1. BeerFinder-Emulator
  2. BeerFinder-XML
  3. BeerFinder-StringXML
  4. BeerFinderJavaCodePart1
  5. BeerFinderJavaCodePart2

  6. CalculateMyGrade-Layout
  7. CalculateMyGrade-Code
  8. CalculateMyGrade-Emulator
  9. R.java
Links:
  1. onClick() vs. onClickListener()

Due Thursday Jan 19 before 10:30am

Install Android Studio - Hello World!
3: (Jan 26) The User Interface: Widgets

Multiple Activities and Intents
End of Chapter 5

Chapter 3
Videos on Widgets
  1. Widgets-Layout and Code
  2. Widgets-Emulator
  3. Widget with Toast - Emulator

Videos on Multiple Activities:
  1. Messenger-OurSecondActivity-Emulator
  2. Messenger -AnotherActivity- Emulator

  3. CalculateMyGrade - Additional Activity/Screen - Emulator
  4. CalculateMyGrade - XML and Java Part 1
  5. CalculateMyGrade - Java Part 2
  6. AndroidManifest.xml
Additional Video on Multiple Activities:
  1. Professor Iacobelli's Multiple Activity Video

Due Thursday Jan 26 before 10:30am

  1. Complete Beer Finder Lab, and while still using a spinner, modify the content and code in some way to use an example that is meaningful to you and submit to dropbox (see ppt in D2L)
  2. Your own Calculator
4: (Feb 2) The User Interface: Layouts

The Activity Lifecycle
Chapter 5

Chapter 4
Videos on Activity Lifecycle:
  1. Stopwatch - XML and Java
  2. Stopwatch - Emulator
  3. Stopwatch - Phone
  4. Stopwatch - Updated Java
  5. Stopwatch - Updated Phone

Due Thursday Feb 2 before 10:30am

  1. Android Project: Choose Topic (and optional team member)
  2. Multiple Activities Lab
  3. Multiple Activities HW
5: (Feb 9) List Views and Adapters Chapter 6 Videos on List Views and Adapters:
  1. ListViews and Adapters - Emulator
  2. ListViews and Adapters - First Activity
  3. ListViews and Adapters - Second Activity
  4. ListViews and Adapters - Third Activity
Additional Videos on List Views and Adapters:
  1. Professor Iacobelli's Video on ListViews
  2. Professor Iacobelli's Video on itemListener

Due Thursday Feb 9 BEFORE 10:30am

  1. Project Designs (Look for Step 2)
  2. User Interface Assignment
  3. Activity Lifecycle Assigment
6: (Feb 16)  Fragments Chapter 7 Videos on Fragments:
  1. Fragments - Phone Emulator
  2. Fragments - Tablet Emulator
  3. Fragments - Java and XML Code - Part1
  4. Fragments - Java and XML Code - Part2
  5. Fragments - Java and XML Code - Part3
  6. Fragments - FrameLayout
Additional Video on Fragments:
  1. Professor Iacobelli's Video on Fragments

Due Thursday Feb 16 BEFORE 10:30am

  1. Complete the List Views and Adapters lab, then modify it in some way to make it unique and your own! Submit to the dropbox.
7: (Feb 23) Android Quiz / Work on Project Review Sheet

Jerry's Practice Android Quiz

Study for Quiz!

8: (Mar 2) 

Android Project Presentations

Due Thursday Mar 2 BEFORE 10:30am

  1. Android Projects Due (Look for Step 3)
9: (Mar 9)  First iOS App Chapter 1 (iOS Textbook) Videos on Getting Started in Xcode:
  1. Create a New iOS Project
  2. Click on Main.Storyboard
  3. Using the Canvas
Screenshots of Simulator:
  1. Click here to bring up Simulator
  2. Simulator
Additional Video on Getting Started in Xcode:
  1. Professor Iacobelli's Video on Creating a New iOS Project
Video on Model View Controller:
  1. Model View Controller
Video on Quiz App:
  1. Quiz App Simulator

Due Thursday Mar 9 BEFORE 10:30am

  1. Getting started with iOS - Hello World!
10: (Mar 16)  The Swift Language Chapter 2 Videos on Swift:
  1. Professor Iacobelli's Swift Introduction Videos
  2. Swift Classes
  3. Swift Classes-Another Example
  4. Swift Classes- Another Example Overriding Methods
  5. Swift Quiz Code
Documentation on Swift:
  1. Swift Documentation
Videos on Calculator Apps:
  1. Calculate the Average of Two Grades
  2. Professor Iacobelli's BMI Calculator

Due Thursday Mar 16 BEFORE 10:30am

  1. Finish lab on the Quiz and make it unique (see submission details on ppt in d2L)
(Mar 23) 

Spring Break

11: (Mar 30)  Views / Text Input Chapters 3-4 Videos on Views:
  1. Simulator - Understanding Constraints
  2. Understanding Constraints
Videos on Text Input:
  1. Simulator - Text Input (end result)
  2. Begin Text Input Slides
  3. Text Color / Font
  4. Keyboard - Decimal Pad
  5. Add Label and Method for Editing Text
  6. Gesture Recogizer
  7. Understanding the Code

Due Thursday Mar 30 BEFORE 10:30am

  1. Update Swift Quiz Part 2 - using only the Playground!
  2. Calculate Something App
12: (Apr 6) View Controllers (Multiple Screens) / Delegate Chapter 5 / End of Chapter 4 Video on Multiple Screens:
  1. Professor Iacobelli's Video on Segue
Videos on Delegate/Protocols:
  1. Protocol
  2. Delegate
  3. Modifying our Farenheit Conversion App

Due Thursday Apr 6 BEFORE 10:30am

  1. iOS Project: Choose Topic
  2. iOS Views and Text
13: (Apr 13)  UITableView Chapter 9

Due Thursday Apr 13 BEFORE 10:30am

  1. Project Step 2: Project Design
  2. iOS View Controllers/Multiple Screens
  3. Using Delegates
14: (Apr 20)  UITableView, cont. Chapter 10

Due Thursday Apr 20 BEFORE 10:30am

  1. iOS Table View
  2. Take the course anonymous survey (not graded) - Go to D2L > Assessments > Surveys
15: (Apr 27)  iOS Quiz / Work on Project Review Sheet

Jerry's Practice iOS Quiz

Study for Quiz!

Finals Week: Thursday May 4, 10:00-11:50am

iOS Project Presentations

Due May 4 BEFORE 10am

  1. Final Project/Presentation

Android Installation Instructions


  1. Install Android Studio, Create a Project, and Run the Emulator
  2. Run on Your Android Device

Cheatsheets


  1. Common Android Views
  2. Common Android Layouts

Other Resources


  1. Generate Signed APK
  2. Professor Iacobelli's Android Playlist
  3. Stack Overflow

Android Studio

Frequently Asked Android Questions!

Let me know if you have any additions or modifications!

Rendering problem: Android N requires the IDE to be running with Java 1.8 or later

  • Install java 1.8 or higher. You can look at help > about to see if it's using 1.8
  • If there are still errors go to File > Project Structure, go to SDK Location, change JDK location to your location, such as C:\Program Files\Java\jdk1.8.0_101
  • If it still doesn't work, this may help Mac users: Edit the Info.plist file

Rendering problem - missing styles:

Restart Android Studio by selecting the menu option "File" → "Invalidate Caches / Restart

Rendering problem: Exception raised during rendering: Binary XML file line #-1p

Change API Version, see: Stack Overflow

Rendering problem: Exception raised during rendering: com/android/util/PropertiesMap

Change API version, see: Stack Overflow

Rendering problem: Missing styles. Is the correct theme chosen for this layout

  1. Go to App Theme option on top and change to a different theme like material light, See: Screenshot
  2. Restart Android Studio by selecting the menu option "File" → "Invalidate Caches / Restart"

Rendering problem: Couldn't resolve resource @string/app_name

  • Build > Clean Project Then Build > Rebuild Project
  • Then Click File-> Invalidate Caches/Restart Option
  • See: Stack Overflow

Rendering problem: with android.graphics.drawable...

WARNING: VM heap size set below hardware specified minimum of 228MB

When you create a new virtual device, on the last screen select show advanced settings and change the VM heap size, then click Finish.

Error: Android studio error file path too long on windows keep below 240 character

Put it in C:\Projects\YourProject

...Permission Denied

I restarted Android Studio and was fine.

Execution failed for task app:transformClassesWithDexForDebug could not create empty directory

I ran build > make Project and ran again and then it was fine.

I am having trouble installing a USB Driver on windows to connect to my phone.

Frequently Asked iOS Questions!

Let me know if you have any additions or modifications!

Main.storyboard brings up xml

Make sure to go to view standard editor – show standard editor. Then right click main.storyboard and show as interface builder.

Main.storyboard only opens as a new window when I click

To get it in the same window – right click on main.storyboard and select open as interface builder – storyboard

OS does not match app deployment version

Double click on the project name here: Screenshot

It will bring up a screen with this info: Screenshot

Change the deployment target (go lower – but not too low – swift is unavailable for versions lower than 7)

Could not attach to PID “####”

Resetting the content and settings in the simulator worked for me. This is available in "Simulator" on the menu. After resetting content and settings, quit the simulator and start it again.

Getting many errors running the emulator

You can also try plugging in an actual ios device (ipad, iphone) to test!