• 1. Android应用开发概述背景,前景,应用开发基础 By: 张方纪, xyxzfj@gmail.com, On: 2/14/2012
  • 2. 本报告将围绕以下方面展开 移动计算。其定义,特点,与前景。(10分钟) Android背景。其定义,成长历史,标志性事件,特性,与架构。(15分钟) Android应用。其代表性应用,创新性应用,以及由此给我们的思考。(10分钟) Android应用开发基础。聚焦Android体系结构第三层(Application Framework)之上的最后一层——Applications,通过一个Hello Teachers,整体介绍其构建(组成部分)与机制(构建之间的关系),并特别介绍Android内建的嵌入式关系数据库管理系统SQLite。(40分钟)
  • 3. 1. 移动计算其定义,特点,与前景。(10分钟)
  • 4. 移动计算的定义移动计算是随着移动通信、互联网、数据库、分布式计算等技术的发展而兴起的新技术。移动计算技术将使计算机或其它信息智能终端设备在无线环境下实现数据传输及资源共享。它的作用是将有用、准确、及时的信息提供给任何时间、任何地点的任何客户。这将极大地改变人们的生活方式和工作方式。(移动计算_百度百科)
  • 5. 移动计算的特点智能手机将是由传统桌面计算向移动计算或云计算这一转变过程中的主力军 突出优点:随时随地可用,传感器丰富 智能手机将逐步发展成人们眼、耳、脑以及不存在在感官的延伸,帮助人们获取、处理、存储与呈现信息,帮助人们作出决定,展现给人们美好的事物,引领人们更加智慧与舒适地生活。
  • 6. 移动计算的前景移动平台是目前和将来相当一段时间应用部署的重要平台。 苹果应用商店已经拥有了超过53万款应用,谷歌电子市场应用数目也已突破40万 应用涵盖了游戏、效率、社交、购物、交通、体育、图书与工具书等等领域,渗入了生活的方方面面
  • 7. 移动计算的前景最高下载量已达5亿(Google Maps) 相当多的免费应用的下载量在十万级别以上,大量收费应用也在万级别以上 (Google Maps)已安装走势图(最近30天): 100,000,000 - 500,000,000
  • 8. 2. Android背景其定义,成长历史,标志性事件,特性,与架构。(15分钟)
  • 9. Android背景2008年十月,第一款Android手机——HTC G1 发布。(The first commercially available phone to run Android was the HTC Dream, released on 22 October 2008. ) 由当时在世界科技公司中市值位居第四的搜索引擎巨人Google所发起,为近百家IT界大型制造、技术与服务公司所支持, Android平台开始成为世界的焦点。 Android平台是完全开放的,意味着任何人都可以获得与使用其源码、技术参数以及文档,所能做的工作与Google内部人员没有太大差异。
  • 10. Android背景移动计算是如今IT界最火热的话题之一。 一个手掌大小的设备,功率不足1W,凭借其运算和存储能力、网络通信能力以及各种传感器,能实现你想象得到和想像不到的各种应用。
  • 11. Android的定义Wikipedia: Android is a Linux-based operating system for mobile devices such as smartphones and tablet computers. It is developed by the Open Handset Alliance led by Google.
  • 12. Android的定义Android Developers: Android is a software stack for mobile devices that includes an operating system, middleware and key applications. The Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
  • 13. Android的成长历史(来源:Android (operating system) - Wikipedia, the free encyclopedia) Google purchased the initial developer of the software, Android Inc., in 2005.[11] The unveiling of the Android distribution in 2007 was announced with the founding of the Open Handset Alliance, a consortium of 86 hardware, software, and telecommunication companies devoted to advancing open standards for mobile devices.[12][13][14][15] Google releases the Android code as open-source, under the Apache License.[16] The Android Open Source Project (AOSP) is tasked with the maintenance and further development of Android.[17]
  • 14. Android的成长历史Android has a large community of developers writing applications ("apps") that extend the functionality of the devices. Developers write primarily in a customized version of Java.[18] Apps can be downloaded from third-party sites or through online stores such as Android Market, the app store run by Google. As of October 2011 there were more than 400,000 apps available for Android, and the estimated number of applications downloaded from the Android Market as of December 2011 exceeded 10 billion.[19][20] Android was listed as the best-selling smartphone platform worldwide in Q4 2010 by Canalys[21][22] with over 200 million Android devices in use by November 2011.[23] According to Google's Andy Rubin, as of December 2011 there are over 700,000 Android devices activated every day.[24]
  • 15. Android的特性 Features Application framework enabling reuse and replacement of components Dalvik virtual machine optimized for mobile devices Integrated browser based on the open source WebKit engine Optimized graphics powered by a custom 2D graphics library; 3D graphics based on the OpenGL ES 1.0 specification (hardware acceleration optional) SQLite for structured data storage Media support for common audio, video, and still image formats (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF) GSM Telephony (hardware dependent) Bluetooth, EDGE, 3G, and WiFi (hardware dependent) Camera, GPS, compass, and accelerometer (hardware dependent) Rich development environment including a device emulator, tools for debugging, memory and performance profiling, and a plugin for the Eclipse IDE
  • 16. Android架构
  • 17. (本页无文本内容)
  • 18. 3. Android应用其代表性应用,创新性应用,以及由此给我们的思考。(5分钟)
  • 19. 移动应用举例百度地图
  • 20. 移动应用举例指南针
  • 21. 移动应用举例科学计算器
  • 22. 移动应用举例收音机
  • 23. 移动应用举例音乐播放器
  • 24. 移动应用举例视频播放器
  • 25. 移动应用举例录音机
  • 26. 移动应用举例Web浏览器
  • 27. 移动应用举例Web浏览器
  • 28. 移动应用举例电话本
  • 29. 移动应用举例短信息
  • 30. 移动应用举例PDF、Office文档的阅读甚至编辑
  • 31. 移动应用举例植物大战僵尸
  • 32. 移动应用举例桌面小工具
  • 33. 移动应用举例词典、电子书、教程等
  • 34. 移动应用举例乐器模拟,驾驶模拟,等等
  • 35. 移动应用举例其他特色应用: 条码扫描(商品比价),名牌扫描,文字识别,车牌识别,人脸识别,拍叶识树(通过拍摄树叶的轮廓和纹络,获得该树的相关信息) 邮件,日程,提醒(Google云集成Gmail、Google Calendar等应用,手机与服务器上的数据自动同步) 多媒体日记(图文声像并茂),网络硬盘 体感游戏(重力感应,加速感应) 创新应用: 手机驱蚊(利用了驱蚊原理和手机音响发出超声波的能力) 吹泡泡(往话筒吹气,屏幕中的泡泡会越变越大) 更多其他......
  • 36. Android电子市场
  • 37. (本页无文本内容)
  • 38. 通过电子市场安装应用
  • 39. (本页无文本内容)
  • 40. 应用的受欢迎度与市场价值最近30天,免费受限版应用Shazam Entertainment Limited下载量已经从一千万次增加到了五千万次。
  • 41. 应用的受欢迎度与市场价值右图显示,Shazam Entertainment Limited已经安装在了当前Google帐户Viky下;收费版一份拷贝需要29.85元,已售出将近100万份拷贝(参见其安装趋势图),总收入已达2985万元。
  • 42. 4. Android应用开发基础聚焦Android体系结构第三层(Application Framework)之上的最后一层——Applications,通过一个Hello Teachers,整体介绍其构建(组成部分)与机制(构建之间的关系),并特别介绍Android内建的嵌入式关系数据库管理系统SQLite。(40分钟)
  • 43. 应用描述 设计一简单应用,以列表方式显示来自数据库的一系列教师信息条目,提供最基本的查找和删除操作。
  • 44. 开发过程演示 步骤: Hello World Hello Teachers 嵌入式关系数据库管理系统SQLite
  • 45. Eclipse IDE
  • 46. Activity生命周期中的回调函数
  • 47. 嵌入式关系数据库管理系统SQLite SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine. SQLite is the most widely deployed SQL database engine in the world. The source code for SQLite is in the public domain.
  • 48. 嵌入式关系数据库管理系统SQLiteAndroid provides full support for SQLite databases. Any databases you create will be accessible by name to any class in the application, but not outside the application.
  • 49. SQLite 3的特性Features Of SQLite Transactions are atomic, consistent, isolated, and durable (ACID) even after system crashes and power failures. Zero-configuration - no setup or administration needed. Implements most of SQL92. (Features not supported) A complete database is stored in a single cross-platform disk file. Supports terabyte-sized databases and gigabyte-sized strings and blobs. (See limits.html.) Small code footprint: less than 350KiB fully configured or less than 200KiB with optional features omitted. Faster than popular client/server database engines for most common operations.
  • 50. SQLite 3的特性(续)Simple, easy to use API. Written in ANSI-C. TCL bindings included. Bindings for dozens of other languages available separately. Well-commented source code with 100% branch test coverage. Available as a single ANSI-C source-code file that you can easily drop into another project. Self-contained: no external dependencies. Cross-platform: Unix (Linux and Mac OS X), OS/2, and Windows (Win32 and WinCE) are supported out of the box. Easy to port to other systems. Sources are in the public domain. Use for any purpose. Comes with a standalone command-line interface (CLI) client that can be used to administer SQLite databases.
  • 51. SQLite建议应用场合 Application File Format.Rather than using fopen() to write XML or some proprietary format intodisk files used by your application, use an SQLite database instead.You'll avoid having to write and troubleshoot a parser, your data will be more easily accessible and cross-platform, and your updates will be transactional. Database For Gadgets.SQLite is popular choice for the database engine in cellphones,PDAs, MP3 players, set-top boxes, and other electronic gadgets.SQLite has a small code footprint, makes efficient use of memory,disk space, and disk bandwidth, is highly reliable, and requiresno maintenance from a Database Administrator. Website Database.Because it requires no configuration and stores information in ordinarydisk files, SQLite is a popular choice as the database to back smallto medium-sized websites. Stand-in For An Enterprise RDBMS.SQLite is often used as a surrogate for an enterprise RDBMS for demonstration purposes or for testing. SQLite is fast and requires no setup, which takes a lot of the hassle out of testing and which makes demos perky and easy to launch.
  • 52. SQLite 3中的数据类型Most SQL database engines (every SQL database engine other than SQLite, as far as we know) uses static, rigid typing. With static typing, the datatype of a value is determined by its container - the particular column in which the value is stored. SQLite uses a more general dynamic type system. In SQLite, the datatype of a value is associated with the value itself, not with its container. The dynamic type system of SQLite is backwards compatible with the more common static type systems of other database engines in the sense that SQL statement that work on statically typed databases should work the same way in SQLite. However, the dynamic typing in SQLite allows it to do things which are not possible in traditional rigidly typed databases.
  • 53. SQLite所支持的字段类型简单地说,每一个在SQLite数据库中存储(或由该数据库引擎所操作)的值,拥有以下五种存储类型之一: NULL。空值。 INTEGER。有符号整数,依值范围的大小,可使用1,2,4,6,甚至8字节存储。 REAL。浮点数,以8字节IEEE浮点数形式存储。 TEXT。文本串,使用数据库编码(UTF-8, UTF-16BE 或 UTF-16LE)存储。 BLOB。进制制大对象。按输入的形式原样存储。 然后,对于被执行的SQL语句,SQLite引擎按合适的方式将传统的静态类型转化上上述五类中的某一类,具体参见文献Datatypes In SQLite Version 3。
  • 54. 其他更多有关Android运行环境的配置,基本构件与运行机制,以及类库API参考,请参考官方网站Android Developers(http://developer.android.com)
  • 55. 5. 结语
  • 56. Android市场Android已经成为了最具商业价值和创业机会的领域之一。 免费、开放的开发环境,极低的硬件成本,十分适合小团队(三五人)作坊式开发。 创意与营销成了最有力的武器,编程能力次之。
  • 57. 对Android的总结一个玩具机器人,儿时的梦的继续 一个学习的方向,大学所学知识的一个大的锻炼 一份工作,一份事业,一个自我价值实现的途径 一个渴求创新、充满机遇的新的天地!
  • 58. 移动应用举例小任务:发挥头脑风暴,基于智能手机硬件平台现有的传感器(触摸,重力,光照,近体,温度,加速,罗盘,GPS)和存储(本地和云)、运算(本地和云)与联网(蓝牙,Wifi,2G/3G)能力,构想自己想要的应用。然后,搜索互联网,看它是否已经存在。 如果不存在:1. 请检查是否满足题述约束,并改进检索方法;2. 重复步骤1;3. 重复步骤2。如果依然查不到,那么可能你有了一个创意 (虽然这种机会不大),赶快将它实现吧! 如果存在:体验它,改进它,享受它。