Java Language Mobile Application Development
Mobile Applications
Mobile Applications
Mobile Apps are apps or services that can be pushed to a mobile device or downloaded and installed locally
Applications Classification
Browser-based: apps/services developed in a markup language
Native: compiled applications (device has a runtime environment). Interactive apps such as downloadable games.
Hybrid: the best of both worlds (a browser is needed for discovery)
Mobile Platforms
A wide variety of devices supporting different platforms
BlackBerry
Palm OS
Windows Mobile/Phone
Symbian
iPhone
Runtime environments & apps
Browser-based apps (WAP)
Flash-lite
Java ME
Qualcomms BREW
Googles Android
IOS
Mobile Generations
Device platform generations
Cellular Phone
Personal Digital Assistance
Business Phone
Smart Phone
Mobile specifications
1st Generation
2nd Generation influence of Web 2.0
3rd Generation influence of Web 3.0
Web Content for Mobile Devices
Markup languages to deliver Web content to device browsers:
HDML
Phone.com (now Openwave)
Compact HTML (cHTML)
NTT DoCoMosi-mode network
WAP Forums WML
A standard for content delivered to mobile devices
Now: openmobilealliance.org
HTML, CSS, JS
HTML5, CSS3, JS, JQuery
Language for Mobile Devices
Programming languages to dynamic Applications:
C/C++
Java (J2ME, RIM, Android, etc SDKs)
MFC/WinCE
C#
Objective C
Flash/Air
Note: C/C++ becomes native language for most of the mobiles for serious developers.
WAP Network Structure
The WAP Gateway plays an important role
WAP Programming Model
Similar to the Web programming model with extensions for the wireless environment
Programming Language Model
Java and Android A Typical development
Android
1. Inside Android
2. Android Development
3. Android UI
Inside Android
Open source OS
Uses Linux kernel
Optimized for limited-resource environment
Apps typically written in Java
Apps run on the Dalvik Virtual Machine
Not a JVM, but works similarly from developers point of view
Usually one app per DVM
Each DVM runs under Linux as a separate user
App permissions set at install time
Possible to use C or C++ compiled to machine code, but still runs on VM. Its not clear to me how this works.
Android Development
Well-defined framework for app development
Apps are typically coded using Java syntax, but other parts of the Java platform are missing
Some standard Java SE or ME APIs and class libraries are not included
Android Development
Standard development environment is Eclipse + Android Development Tools/Plugin+ Android SDK
Development requires either an Android OS device or an emulator
Emulator has limitations:
Performance is poor
Camera, etc., simulated using your computers hardware
No real phone calls or texts
GPS data, battery readings, etc. must be simulated
Real device is affected by specific hardware and software configuration
Android vs. Other Mobile OS
Choosing kind of smart phone to get according to platform to use, to try mobile development
Android Programming:
Large Java backend code readily available to go
Android Platform:
Familiar programming environment
Currently the market leader
Broad market, unlike more focused iOS, Blackberry,Symbian, etc
Development tools are open source and are free even for commercial use, unlike Visual Studio
Android App vs. Mobile- Optimized RIA
Android Flash plugins available; Silverlight coming soon
Could develop in JavaScript and/or HTML5
WWW App
Easier for users to run; no need to install
For a paid app, avoid the 30% App Store commission
Easier to write cross-platform apps
Android Apps
Fewer security hurdles
Use APIs for access to built in GPS, camera, etc.
Probably better performance
Android Apps: Marketing
Usually market apps through Android App Market
There are other markets, also
App store will dominate the market due to access through built in app
Can set up for download directly on a website
User must agree to install apps from unknown sources
Android Apps: Marketing
Revenue from app sales prices and/or advertising
Conventional wisdom is that IOS users will pay for apps, but Android users wont
57% of Android App Store apps are free, vs. 28% for Apple App Store
Android Market takes 30% commission
Any purchase model other than one-time purchase must be homegrown, using Paypal or similar service
PPC ads
My guess is that response to these is extremely low
Probably need to be very aggressive with banner ads
Sell to companies?
APIs for Android built-ins
Android OS ships with many built in apps
Web Browser
Google Maps
Navigation
Camera apps
Built in access for these as well as TTS and Voice Recognition, etc.
by: Rakesh Maltumkar
Learn Spanish In Madrid With Esl Language Studies Abroad Some Wonderful Languages Study Abroad Options Language Schools For Spanish Courses C Language Training For Advanced Programming Language Learning Through Your Entire Senses Most Recommended As Second Language-chinese Language Globalization With Language Translators Heidi Klum Has Returned In Order To The German Language Modeling Location Easy Methods For Teaching Languages
How To Understand The Language Of Prudential Reality? Using Machine Translation For Asian Languages Rfp Translation Secrets: 3 Strategies To Communicating Effectively In A Different Language Handling Employee Training With The Proper Language Interpretation Services