android workshop: day 1 part 1
DESCRIPTION
Before Getting StartedTRANSCRIPT
![Page 1: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/1.jpg)
Android Application Development
Workshop: Day 1 Part 1Ahsanul Karim
Sentinel Solutions Ltd.http://www.sentinelbd.com
http://androidstream.wordpress.com
Before Getting Started
![Page 2: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/2.jpg)
Workshop
8 weeks 1 day/week 3 hours/day Total= (8*1*3)=24 hours Every Tuesday (2:30 PM)
Time Duration: Place:
So title of this workshop could be:Android in 24 hours!!!
Please read this:http://norvig.com/21-days.html
![Page 3: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/3.jpg)
Before Proceeding Any Further
Prerequisite: Working knowledge inJava Programming language
* Object Oriented Programming:* What are the advantages?
* Why Java knowledge is the prerequisite?
* I hate to program in Java, what should I do?
* Why Google chose Java for Android?
![Page 4: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/4.jpg)
Before Introduction:1. Monotonous discussion should be banned
![Page 5: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/5.jpg)
Before Introduction: Your Suggestions2. This could be the first phase and it should be continued.
According to your feedback, we can arrange the sequels of this workshop: (Remember: Terminator 2 was more successful)
1. Workshops2. Training Programs 3. Bootcamps4. Onsite Contests with help from experienced Developers5. Idea-based Contests with help from experienced Developers6. Jamming Events7. Open source projects
Depends on your feedback
![Page 6: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/6.jpg)
Before Introduction: Your Suggestions3. You can emphasize on learning OOPs before starting session on Android. Because very large number of Software Developer have no clear concept on OOP.
OOP concept is indispensable. But we have to learn in parallel.
4. It might get a little more interesting if the attendants are allowed to have the opportunity to play or use some of the android apps themselves.
Can you suggest how can we do that? May be next time we’ll try.We may review some good apps today.
![Page 7: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/7.jpg)
Before Introduction: Your Suggestions5. If you give us some knowledge regarding to developing android software and how to post them in the android market it can be helpful to us in the future.
We’ll do that in this session
6. You can give us some video about mobile application programming which can help us.
We’ll provide you complete course content with video tutorials we did in BASIS (Bangladesh Association of Software & Information Services)
![Page 8: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/8.jpg)
Before Introduction: Your Suggestions7. Consider all type of audience.
Excellent suggestion. We’ll try that
8. Discuss from technological perspective as well as business.Excellent suggestion. We’ll try that
9. Forecast about near future associated with Android.
Excellent suggestion. We’ll try that
![Page 9: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/9.jpg)
So Today…
1. Get Basic Idea on Mobile and Smartphone Applications2. Get Basic Idea on Mobile, Smartphone & Tablet Platforms3. Identify the Position of Android Platform4. Background and History of Android5. Get the Idea: Why Should We Learn Android Platform6. Opportunities7. Some App Demos8. System Architecture9. Environment Setup to Kick-start10. Development Environment11. Application Structure
![Page 10: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/10.jpg)
Mobile and Smartphone ApplicationsSmart Phones
1. A smartphone is a mobile phone that offers more advanced computing ability, Features and connectivity than a contemporary mobile phones.
2. Smartphones may be thought of as handheld computers integrated with a mobile telephone.
3. They also provide their own Operating System with Application Development Framework
To learn about smart phones in details: http://en.wikipedia.org/wiki/Smartphone
You’ll get detailed history about how this technology evolved over the years
![Page 11: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/11.jpg)
Mobile and Smartphone ApplicationsSmart Phones Platforms
Android iPhone Palm PreBlackBerry
![Page 12: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/12.jpg)
Mobile and Smartphone ApplicationsTablet Platforms
Android: Galaxy Tab Apple: iPad
![Page 13: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/13.jpg)
Overview of Application Platforms (alphabetically)
Platform Language (s) RemarksAndroid Java, C, C++ Open Source OS (Based on Linux)
http://developer.android.com
bada C, C++ Samsung’s mobile platform running on Linux or RealTime OShttp://developer.bada.com
BlackBerry Java, Web Apps Java, Web Apps, Java ME compatible, extensions enable tighter integrationhttp://na.blackberry.com/eng/developers
iOS Objective-C, C Requires Apple Developer Accounthttp://developer.apple.com/iphone
MeeGo Qt, C++, others Intel and Nokia guided open source OS (based on Linux)http://meego.com/developers
Symbian C, C++, Java, Qt, Web Apps, others
OS built from the ground up for mobile deviceshttp://www.forum.nokia.com/symbian
![Page 14: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/14.jpg)
Overview of Application Platforms (Cont.)
Platform Language (s) RemarkswebOS HTML, CSS,
JavaScript, CSupports widget style programming (based on Linux)http://developer.palm.com
Windows Mobile
C#, C .NET CF or Windows Mobile API, most devices ship with Java ME compatible JVMhttp://developer.windowsmobile.com
Windows Phone
C#, VB.NET Silverlight, XNA Frameworkshttp://create.msdn.com
Source: http://mobileplatforms.wikidot.com/
![Page 15: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/15.jpg)
Application Platforms
![Page 16: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/16.jpg)
Why Android
![Page 17: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/17.jpg)
Why Android (Cont.)
![Page 18: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/18.jpg)
Why Android (Cont.)
![Page 19: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/19.jpg)
Why Android (Cont.)
![Page 20: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/20.jpg)
Why Android: Google TV
![Page 21: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/21.jpg)
Why Android: Finally BlackBerry Gives In
![Page 22: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/22.jpg)
Open Handset Alliance (Nov 2007)Manufacturers: Designing the Android Handsets
Content Providers: Developing Apps Mobile Operators
Markets: Distribution
![Page 23: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/23.jpg)
Why Android (Cont.)Technical Advantages
No need to pay for any developer’s program to develop and test apps in real devices
Open source platform with scope of more innovation (Less proprietary restrictions)
Java programming language
Rich and easy to integrate feature sets
Easy, effective and cost-effective prototyping for research and business
Development Environment Support in Windows, Mac & Linux (Ubuntu)
Imagination is the Limit
![Page 24: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/24.jpg)
Why Android (Cont.)Business Advantages
Google Play: Integrated market appOne time low registration fee
Many Distribution Channels:(We’ll see next)
Low Barrier to Market:No approval processLess restrictions with copyright issues
![Page 25: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/25.jpg)
Why Android (Cont.)Opportunities
Google Play: (http://market.android.com)Integrated Android Market Application in phones can ensure your reach to
millions of users without any approval process.
Amazon Appstore for Android: http://www.amazon.com/mobile-apps/b?ie=UTF8&node=2350149011
Enterprise Market:https://marketplace.cisco.com/
3rd Party Distribution Channels :1. Andspot 2. Handango 3. GetJar 4. SlideMe 5.AndAppStore6. AndroLib 7. AppBrain and many more…
![Page 26: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/26.jpg)
Why Android (Cont.)Opportunities
Android Market: (1) Analytics to help decision making
![Page 27: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/27.jpg)
Why Android (Cont.)Opportunities
Google Play: (2) Crash log to support bug fixes
![Page 28: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/28.jpg)
Why Android (Cont.)Opportunities
Google Play: (3) Requirements
![Page 29: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/29.jpg)
Why Android (Cont.)Opportunities
Amazon Appstore for Android:
![Page 30: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/30.jpg)
Why Android (Cont.)Opportunities
Enterprise Market:
$ $ $ $ $ $ $
![Page 31: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/31.jpg)
Why Android (Cont.)Monetization Opportunities
Paid Apps $ $ $ $ $ $ $ In-App Billing Free Apps with Ads
AdMob AdWhirl Mobclix and many more
![Page 32: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/32.jpg)
Freelancing Opportunities
Statistics Source: http://www.elance.com/android-programmers-freelancers/230
Similar trend is seen in other freelancing sites
Why Android (Cont.)
Can be a good source of income to support your own product development or research
![Page 33: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/33.jpg)
Game Development OpportunitiesWhy Android (Cont.)
Case Study: AhhhPah http://ahhhpah.com/
Simplified Game frameworks1. Libgdx: http://code.google.com/p/libgdx/2. AndEngine: http://www.andengine.org/3. Unity3d: http://unity3d.com/
Development Time: 8 hoursDownloads: millions
![Page 34: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/34.jpg)
Some Interesting AppsWhy Android (Cont.)
ShazamHear a song you don't know? Shazam identifies it instantly.
INSTALLS:10,000,000 - 50,000,000
![Page 35: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/35.jpg)
Some Interesting AppsWhy Android (Cont.)
Guitar : Solo LiteINSTALLS:10,000,000 - 50,000,000
![Page 36: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/36.jpg)
My StoryWhy Android (Cont.)
ProTranslate INSTALLS: 50,000 - 100,000
Features:1. Support for wide range of
languages2. Share translated text
(Email,SMS,twitter,facebook)Pronounciation and speech output
3. Website translationDocument translation and share via email
4. Auto-prompt to translate SMS received
5. Optimized for all Android devices
It gave us Google’s Device Seeding Program Award
![Page 37: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/37.jpg)
My StoryWhy Android (Cont.)
ProTranslate
![Page 38: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/38.jpg)
Research OpportunitiesWhy Android (Cont.)
Easy Prototyping of any idea is possible in Android. Some of the advanced research based projects are prototyped in Android.
Computer Vision
MINDdroidCV(http://www.jataka.hu/rics/nxt_android_opencv/index.html)
![Page 39: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/39.jpg)
Research OpportunitiesWhy Android (Cont.)
Easy Prototyping of any idea is possible in Android. Some of the advanced research based projects are prototyped in Android.
mHealth
Developed by the Johns Hopkins Center for Clinical Global Health Education, eMOCHA uses video, audio, touchscreen quizzes, GPS and SMS to collect and analyze large amounts of data.
eMOCA (www.emocha.org)
![Page 40: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/40.jpg)
Research OpportunitiesWhy Android (Cont.)
Easy Prototyping of any idea is possible in Android. Some of the advanced research based projects are prototyped in Android.
mHealth
Developed by ClickDiagnostics, uses video, audio, touchscreen Quizzes to upload data to server to reach the consultants.
ClickDiagnosticshttp://clickdiagnostics.com/
![Page 41: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/41.jpg)
Research OpportunitiesWhy Android (Cont.)
mHealth
Clinical diagnosis + Data acquisition
![Page 42: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/42.jpg)
Research OpportunitiesWhy Android (Cont.)
Android + Arduino = Innovation UnlimitedArduino (http://www.arduino.cc/)
1. Arduino is an open-source electronics prototyping platform2. can sense the environment by receiving input from a variety of sensors and can affect its
surroundings by controlling lights, motors, and other actuators.
http://arduino.cc/blog/2011/10/12/android-open-2011-massimo-banzi-arduino-android-infinite-possibilities/
![Page 43: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/43.jpg)
Research OpportunitiesWhy Android (Cont.)
Android in Disaster Management
A Mobile Disaster Management System Using the Android Technologyhttp://www.naun.org/journals/communications/19-280.pdf
Implementation of an Android based disaster management systemhttp://www.bcdph.com/download/android.pdf
Android Incident Reporting for SAHANA Disaster Management Systemhttp://code.google.com/p/sahana-incident-reporter/
Case Study: Bangladesh Army
1. Custom sensor device to accumulate weather data2. Create forecast3. Use data feeds to plan strategies for recovery4. Integrated solar cell for self sufficient power
![Page 44: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/44.jpg)
Application Development OpportunitiesWhy Android (Cont.)
Augmented Reality
Some more: http://techsplurge.com/3214/mega-list-33-awesome-augmented-reality-apps-games-android/
Real World Environment+ Sound, Video, Graphics data generated by systems= AR
![Page 45: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/45.jpg)
Cross-platform Development1. RhoMobile http://rhomobile.com/
2. Appcelerator http://www.appcelerator.com/
3. PhoneGap http://www.phonegap.com/
![Page 46: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/46.jpg)
Resources: Android Developers’ Sitehttp://developer.android.com
1. Tutorials & Design Guidelines2. SDK References3. Articles on Pragmatic & Good Practices4. & anything you’ll need including Google IO Videos
![Page 47: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/47.jpg)
Resources: Open Source Projects1. http://code.google.com/p/apps-for-android/2. http://en.wikipedia.org/wiki/List_of_open_source_Android_applications
![Page 48: Android Workshop: Day 1 Part 1](https://reader035.vdocument.in/reader035/viewer/2022062512/554988f2b4c905b96a8b4efe/html5/thumbnails/48.jpg)
Questions?