Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
65 views

Mobile Programming Note

The document discusses mobile computing and context-aware mobile applications. It covers topics like mobile hardware architecture, application frameworks, context sensing and modeling, information architecture, and factors for choosing between native, hybrid and HTML5 app development. Guidelines for mobile app design are also provided.

Uploaded by

Nahom Dires
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
65 views

Mobile Programming Note

The document discusses mobile computing and context-aware mobile applications. It covers topics like mobile hardware architecture, application frameworks, context sensing and modeling, information architecture, and factors for choosing between native, hybrid and HTML5 app development. Guidelines for mobile app design are also provided.

Uploaded by

Nahom Dires
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

Unit 1

• Mobile computing: computing environment over physical mobility


o Users should able to access data, information or other logical objects
from any device in any network while on the move

• Main principles of MC
o Portability: Physical mobility
o Connectivity: quality of service (QoS) of the network connectivity
o Interactivity: node collaboration and communication between
computing devices
o Individuality: have individual contextual information individually

• Smartphone Hardware Architecture


o Central Processing Unit (CPU)
o Graphics Processing Unit (GPU)
o Memory and Storages
o Display Requirements
o Display Requirements
o Display Technologies: LCD, AMOLED
o Connectivity & Sensors
• Application Framework
o Activity Manager: Manages the activity life cycle of applications
o Content Providers: Manage the data sharing between applications
o Telephony Manager: Manages all voice calls
o Location Manager: Location management, using GPS or cell tower
o Resource Manager: Manage the various types of resources we use in
our App
o OpenGL ES: The OpenGL ES is a 3D graphics library
o SQLite: Contains the SQLite database management classes
o Media Framework: contains all of the codecs that are required for
multimedia experience
o Free Type: used to render the fonts
o SSL: used for internet security (Secure Socket Layer)
o WebKit: open source browser engine
• APPLICATIONS OF MOBILE COMPUTING
o Vehicles
o Mobile workers
o Replacement of fixed networks
o Entertainment, education

Unit 2
• Context: Any information that can be used to characterize the situation of
an entity
o In general: User, Task, Environment, Device
• Context-Aware Mobile Computing:
o context-aware: uses context to provide relevant information and/or
services to the user, where relevancy depends on the user’s task
o Applications that can detect their user’s situations and adapt to their
behaviors accordingly
• Why Context?
o Present services and information to a user
o Automatically execute a service for a user
o Tag information to retrieve at a later time

• Context Sensing
o Low level context sensing: Can be sensed directly using sensors or
through simple processing
o High level context sensing: Involve the amalgamation of low-level
context information and sophisticated processing
• Categories of Context
o Computing context
o User context
o Physical context
o Temporal context

• Considering Context: The 5 W’s


o Who - Social context
o What - Function context
o Where - Location context
o When - Temporal context
o Why - Motivating context

• Context-aware Requirements
o Contextual Sensing
o Contextual adaptation
o Contextual resource discovery
o Contextual augmentation/ processing

• Information Architecture:
o structural design of shared information environments
o the practice of labeling and organizing content to enhance findability
and usability

• IA Architecture
o Organization System: E.g content categories
o Navigation system
o Search system
o Labelling system
• Information architecture is concerned with
o Understanding the structure and
o Organization of the content of the app

• New Rules for Mobile App Design


o R1: Forget what you think you know
o R2: Believe what you see, not what you read
o R3: Constraints never come first
o R4: Focus on context, goals and needs
o R5: You can’t support everything
o R6: Don’t convert, create
o R7: Keep it simple
• The most important design concern in the design of an application running
in a mobile device is: The consistency of user experience

• common workflow for the development of apps


o Scoping - fundamental purpose of the application, Mobile specific
o Performance considerations - General responsiveness metrics
o User interface design - study key use cases and features
o Data model and memory concerns
o Communications and I/O - how the application communicates with
the resources that are located beyond its control: Internal resources,
External resources, Socket-based communications

• Types of Mobile Apps


o HTML5 - run inside a Browser and cannot make use of many things
that Mobile OS provides
▪ Pros
• Lowest Development Cost
• Maximum Reuse
• Use Same team
• No App Store Distribution hassles
• Instant Updates, Clients on latest Version
▪ Cons
• User needs to open browser
• Loading time is slowest
• No notification available for updates
• Limited access to Phone Features
• App Store Marketing not available
• Simulation of Native UX
o Native
▪ Pros
• The prowess of Mobile is available
• Ability to build Richest & Fastest Apps
• Notifications Available
• Offline Storage Available
• Background Processing Available.
• Entire Device Sensor Array Available
• App Store/Market Monetization Possible
▪ Cons
• Highest Development Cost
• Dedicated teams for different Platforms
• Design/Code Reuse not Possible
• AppStore/Market approval is prerequisite for launch of
new features
• Longer development time
o Hybrid (HTML5 + Native) - are Native Apps, Web App is hosted inside
Native App
▪ Pros
• Best of Both Worlds
• HTML5 in Embedded Browser
• Business Logic in HTML 5/Server
• Sensor Array available via Native
• Native App with Embedded Browser
• Any Extensions are Native
▪ Cons
• Development Environment is Complex
• Both Web and Native Skills are required
• Native Skills required for extensions across platforms
• Pains from both worlds: Catching up on new OS and
HTML5 Feature sets

• Factors for Choosing (Native, Hybrid, HTML5)


o Performance (1, 2, 3)
o Rich UI (1, 2, 3)
o Development Cost (1, 2, 3)
o Time to Market (Longest, Moderate, Shortest)
o App Store Engagement (Maximum, Maximum, No)
o Security (Highest, High, Limited)

You might also like