Android Workshop: Day 1 Part 1

2,067 views
1,993 views

Published on

Before Getting Started

Published in: Education, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,067
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
242
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Android Workshop: Day 1 Part 1

  1. 1. Android Application Development Before Getting Started Ahsanul Karim ahsanul.karim@sentinelbd.comWorkshop: Day 1 Part 1 Sentinel Solutions Ltd. http://www.sentinelbd.com http://androidstream.wordpress.com
  2. 2. Workshop Time Duration: Place:  8 weeks  1 day/week  3 hours/day  Total= (8*1*3)=24 hours  Every Tuesday (2:30 PM)So title of this workshop could be:Android in 24 hours!!!Please read this:http://norvig.com/21-days.html
  3. 3. Before Proceeding Any Further Prerequisite: Working knowledge in Java 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?
  4. 4. Before Introduction:1. Monotonous discussion should be banned
  5. 5. Before Introduction: Your Suggestions2. This could be the first phase and it should be continued.According to your feedback, we can arrange the sequels ofthis workshop:(Remember: Terminator 2 was more successful) 1. Workshops 2. Training Programs 3. Bootcamps 4. Onsite Contests with help from experienced Developers 5. Idea-based Contests with help from experienced Developers 6. Jamming Events 7. Open source projects Depends on your feedback
  6. 6. Before Introduction: Your Suggestions3. You can emphasize on learning OOPs before startingsession on Android. Because very large number of SoftwareDeveloper 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 areallowed to have the opportunity to play or use some of theandroid apps themselves. Can you suggest how can we do that? May be next time we’ll try. We may review some good apps today.
  7. 7. Before Introduction: Your Suggestions5. If you give us some knowledge regarding to developingandroid software and how to post them in the androidmarket it can be helpful to us in the future. We’ll do that in this session6. You can give us some video about mobile applicationprogramming which can help us. We’ll provide you complete course content with video tutorials we did in BASIS (Bangladesh Association of Software & Information Services)
  8. 8. Before Introduction: Your Suggestions7. Consider all type of audience. Excellent suggestion. We’ll try that8. Discuss from technological perspective as well as business Excellent suggestion. We’ll try that9. Forecast about near future associated with Android. Excellent suggestion. We’ll try that
  9. 9. So Today… 1. Get Basic Idea on Mobile and Smartphone Applications 2. Get Basic Idea on Mobile, Smartphone & Tablet Platforms 3. Identify the Position of Android Platform 4. Background and History of Android 5. Get the Idea: Why Should We Learn Android Platform 6. Opportunities 7. Some App Demos 8. System Architecture 9. Environment Setup to Kick-start 10. Development Environment 11. Application Structure
  10. 10. Mobile and Smartphone ApplicationsSmart Phones1. 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
  11. 11. Mobile and Smartphone ApplicationsSmart Phones Platforms Android iPhone BlackBerry Palm Pre
  12. 12. Mobile and Smartphone ApplicationsTablet Platforms Android: Galaxy Tab Apple: iPad
  13. 13. Overview of Application Platforms (alphabetically)Platform Language (s) RemarksAndroid Java, C, C++ Open Source OS (Based on Linux) http://developer.android.combada C, C++ Samsung’s mobile platform running on Linux or RealTime OS http://developer.bada.comBlackBerry Java, Web Apps Java, Web Apps, Java ME compatible, extensions enable tighter integration http://na.blackberry.com/eng/developersiOS Objective-C, C Requires Apple Developer Account http://developer.apple.com/iphoneMeeGo Qt, C++, others Intel and Nokia guided open source OS (based on Linux) http://meego.com/developersSymbian C, C++, Java, Qt, OS built from the ground up for mobile devices Web Apps, http://www.forum.nokia.com/symbian others
  14. 14. Overview of Application Platforms (Cont.)Platform Language (s) RemarkswebOS HTML, CSS, Supports widget style programming (based on Linux) JavaScript, C http://developer.palm.comWindows C#, C .NET CF or Windows Mobile API, most devices shipMobile with Java ME compatible JVM http://developer.windowsmobile.comWindows C#, VB.NET Silverlight, XNA FrameworksPhone http://create.msdn.com Source: http://mobileplatforms.wikidot.com/
  15. 15. Application Platforms
  16. 16. Why Android
  17. 17. Why Android (Cont.)
  18. 18. Why Android (Cont.)
  19. 19. Why Android (Cont.)
  20. 20. Why Android: Google TV
  21. 21. Why Android: Finally BlackBerry Gives In
  22. 22. Open Handset Alliance (Nov 2007) Manufacturers: Designing the Android HandsetsContent Providers: Developing Apps Mobile Operators Markets: Distribution
  23. 23. 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) I ma g i n a t i o n i s t h
  24. 24. Why Android (Cont.)Business Advantages Google Play: Integrated market app One time low registration fee Many Distribution Channels: (We’ll see next) Low Barrier to Market: No approval process Less restrictions with copyright issues
  25. 25. 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.AndAppStore 6. AndroLib 7. AppBrain and many more…
  26. 26. Why Android (Cont.)Opportunities Android Market: (1) Analytics to help decision making
  27. 27. Why Android (Cont.)Opportunities Google Play: (2) Crash log to support bug fixes
  28. 28. Why Android (Cont.)Opportunities Google Play: (3) Requirements
  29. 29. Why Android (Cont.)Opportunities Amazon Appstore for Android:
  30. 30. Why Android (Cont.)Opportunities Enterprise Market: $ $ $ $ $ $ $
  31. 31. Why Android (Cont.)Monetization Opportunities Paid Apps $ $ $ $ $ $ $ In-App Billing Free Apps with Ads AdMob AdWhirl Mobclix and many more
  32. 32. Why Android (Cont.) Freelancing Opportunities Statistics Source: http://www.elance.com/android-programmers-freelancers/230 Similar trend is seen in other freelancing sites Can be a good source of income to support your own product development or research
  33. 33. Why Android (Cont.)Game Development OpportunitiesCase Study: AhhhPah http://ahhhpah.com/ Development Time: 8 hours Downloads: millions Simplified Game frameworks 1. Libgdx: http://code.google.com/p/libgdx/ 2. AndEngine: http://www.andengine.org/ 3. Unity3d: http://unity3d.com/
  34. 34. Why Android (Cont.)Some Interesting Apps Shazam Hear a song you dont know? INSTALLS:10,000,000 - 50,000,000 Shazam identifies it instantly.
  35. 35. Why Android (Cont.)Some Interesting Apps Guitar : Solo Lite INSTALLS:10,000,000 - 50,000,000
  36. 36. Why Android (Cont.)My Story ProTranslate INSTALLS: 50,000 - 100,000 It gave us Google’s Device Seeding Program AwardFeatures:1. Support for wide range of languages2. Share translated text (Email,SMS,twitter,facebook) Pronounciation and speech output3. Website translation Document translation and share via email4. Auto-prompt to translate SMS received5. Optimized for all Android devices
  37. 37. Why Android (Cont.)My Story ProTranslate
  38. 38. Why Android (Cont.)Research OpportunitiesEasy Prototyping of any idea is possible in Android. Some of the advancedresearch based projects are prototyped in Android. Computer Vision MINDdroidCV(http://www.jataka.hu/rics/nxt_android_opencv/index.html)
  39. 39. Why Android (Cont.)Research OpportunitiesEasy Prototyping of any idea is possible in Android. Some of the advancedresearch based projects are prototyped in Android. mHealth eMOCA (www.emocha.org) 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.
  40. 40. Why Android (Cont.)Research OpportunitiesEasy Prototyping of any idea is possible in Android. Some of the advancedresearch based projects are prototyped in Android. mHealth ClickDiagnostics http://clickdiagnostics.com/ Developed by ClickDiagnostics, uses video, audio, touchscreen Quizzes to upload data to server to reach the consultants.
  41. 41. Why Android (Cont.)Research OpportunitiesmHealth Clinical diagnosis + Data acquisition
  42. 42. Why Android (Cont.)Research OpportunitiesAndroid + Arduino = Innovation UnlimitedArduino (http://www.arduino.cc/) 1. Arduino is an open-source electronics prototyping platform 2. 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/androi d-open-2011-massimo-banzi-arduino- android-infinite-possibilities/
  43. 43. Why Android (Cont.)Research OpportunitiesAndroid in Disaster Management A Mobile Disaster Management System Using the Android Technology http://www.naun.org/journals/communications/19-280.pdfImplementation of an Android based disaster management systemhttp://www.bcdph.com/download/android.pdf Android Incident Reporting for SAHANA Disaster Management System http://code.google.com/p/sahana-incident-reporter/ Case Study: Bangladesh Army 1. Custom sensor device to accumulate weather data 2. Create forecast 3. Use data feeds to plan strategies for recovery 4. Integrated solar cell for self sufficient power
  44. 44. Why Android (Cont.) Application Development Opportunities Augmented RealitySome 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
  45. 45. Cross-platform Development1. RhoMobile http://rhomobile.com/2. Appcelerator http://www.appcelerator.com/ 3. PhoneGap http://www.phonegap.com/
  46. 46. Resources: Android Developers’ Sitehttp://developer.android.com1. Tutorials & Design Guidelines2. SDK References3. Articles on Pragmatic & Good Practices4. & anything you’ll need including Google IO Videos
  47. 47. Resources: Open Source Projects1. http://code.google.com/p/apps-for-android/2. http://en.wikipedia.org/wiki/List_of_open_source_Android_applications
  48. 48. Questions?

×