CSCE 4623 - Mobile Programmingcsce.uark.edu/~ahnelson/CSCE4623/lectures/lecture1.pdf · Why Mobile...

Post on 20-Jun-2020

9 views 0 download

transcript

CSCE 4623 - Mobile Programming

Alexander Nelson

August 26, 2019

University of Arkansas - Department of Computer Science and Computer Engineering

Warm-Up

Answer the online survey:

https://bit.ly/2Pelax6

1

Introduction

Why Mobile Programming?

1.43 Billion Smartphones sold in 20181

88% of mobile phones sold are Smartphones

Worldwide Android Smartphone market Share = 76%2

US: iOS = 56, Android 44%

Put simply, they are everywhere

1https://www.digitaltrends.com/mobile/

2018-smartphone-sales-decline-news/2Strategy Analytics

2

Why is Mobile Programming Challenging?

User InterfaceDesign

NetworkingWLAN and WPAN

OperatingSystems

Web andCloud Services

Built-InSensors

Limited HardwareResources

3

Designing User Interfaces

User InterfaceDesign

NetworkingWLAN and WPAN

OperatingSystems

Web andCloud Services

Built-InSensors

Limited HardwareResources

What are the challenges?

• How do you build the interface?

(Android: XML and Event Driven)

• How do you interact with the user?

• What about accessibility?

4

Networking

User InterfaceDesign

NetworkingWLAN and WPAN

OperatingSystems

Web andCloud Services

Built-InSensors

Limited HardwareResources

What are networking options?

• Wide area networks (WAN) e.g.

Cellular, Wi-Fi

• Wireless Local Area Networks

(WLAN) e.g. Wi-Fi

• Wireless Personal Area Networks

(WPAN) e.g. Bluetooth, ZigBee

5

Why do we need to know OS?

User InterfaceDesign

NetworkingWLAN and WPAN

OperatingSystems

Web andCloud Services

Built-InSensors

Limited HardwareResources

Example OS Calls

• Reading/writing files

• Interprocess Communication

• Threading

6

Accessing the Internet

User InterfaceDesign

NetworkingWLAN and WPAN

OperatingSystems

Web andCloud Services

Built-InSensors

Limited HardwareResources

Vast majority of applications need

access to the Internet

These communications are typically

standard interfaces

• Webservices (i.e. REST)

• Interfaces (e.g. HTML for

webpages)

• Other services (e.g. SSH, IMAP,

RDP)

7

Sensors enable new technological interaction

User InterfaceDesign

NetworkingWLAN and WPAN

OperatingSystems

Web andCloud Services

Built-InSensors

Limited HardwareResources

Enables pervasive computing at

personal scale

You are carrying these sensors in your

pocket:

• Cameras

• GPS

• Accelerometers

• Microphone

8

Phones are nearing traditional computing specs

User InterfaceDesign

NetworkingWLAN and WPAN

OperatingSystems

Web andCloud Services

Built-InSensors

Limited HardwareResources

Example Limitations

• Storage (≈ 64GB)

• CPU† (60% SC / (40-100) Task

dependent% MC vs. i7)

• RAM† (4 GB)

†Comparisons for iPhone XS

9

Phones are nearing traditional computing specs

User InterfaceDesign

NetworkingWLAN and WPAN

OperatingSystems

Web andCloud Services

Built-InSensors

Limited HardwareResources

Example Limitations

• Storage (≈ 64 − 512GB)

• CPU† (60% SC / (40-100) Task

dependent% MC vs. i7)

• RAM† (4 GB)

• Battery

†Comparisons for iPhone XS

10

The biggest limitation is the condition of the

mobile user

There is a need for immediacy and abrupt

change

10

Typical phone specification (iPhone XS)

11

Course Administration

Course mechanics

Course Webpage:

sites.uark.edu/ahnelson/csce-4623-mobile-programming/

Syllabus is on the website.

Course Communication:

https://csce4623-uark.slack.com/

This slack channel is to be the primary mode of communication

12

Homework - Due Friday by Midnight

Sign up on the Slack website

Use your UARK username as the slack username.

Download Android Studio

https://developer.android.com/studio/index.html

Video will be on the website by end of day Friday. Send screenshot

of android studio in direct message to my slack user (ahnelson)

5% of the first project grade.

13