新書推薦:
《
世界文明中的作物迁徙:聚焦亚洲、中东和南美洲被忽视的本土农业文明
》
售價:NT$
454.0
《
无端欢喜
》
售價:NT$
347.0
《
股票大作手操盘术
》
售價:NT$
245.0
《
何以中国·何谓唐代:东欧亚帝国的兴亡与转型
》
售價:NT$
398.0
《
一间只属于自己的房间 女性主义先锋伍尔夫代表作 女性精神独立与经济独立的象征,做自己,比任何事都更重要
》
售價:NT$
203.0
《
泉舆日志 幻想世界宝石生物图鉴
》
售價:NT$
611.0
《
养育女孩 : 官方升级版
》
售價:NT$
230.0
《
跨界:蒂利希思想研究
》
售價:NT$
500.0
|
編輯推薦: |
说起App Inventor在我国的发展,老巫婆(金从军老师)是一个无法绕开的名字。她和她的丈夫张路*早将App Inventor 2汉化,并推出离线版,为App Inventor的国内推广,做了很多重要的工作。我和我的儿子谢集自学App Inventor 2,全靠她翻译的帮助文件。有趣的是,我在2014年才从老巫婆的博客上发现一个细节: 2013年上海创客嘉年华活动中,我和吴俊杰等教师在创客论坛上演讲,呼吁创客们关注中小学教育,坐在*排拿着摄像机的就是她和张路老师。后来她告诉我,那天听了我们的演讲后,他们就下决心要为儿童编程做点事,回到北京就开始做App Inventor 2汉化、翻译工作。
|
內容簡介: |
MIT App Inventor是一款图形化的APP开发环境,用户能够以拖曳积木的形式开发Android平台的应用程序。本书以App Inventor 2.0为开发平台,结合大量的具体案例,如音乐摇摇乐、GPS计步器等,深入浅出地介绍了App的开发过程和App Inventor的编程功能,并且逐步讲解第三方API应用接口调用,App和Arduino硬件、Web服务结合等高级应用。 本书适合中学生和学有余力的小学高年级学生,同时也适用于零基础的大学生、成年初学者。只要对安卓App开发感兴趣,或者对创客感兴趣,本书将是一本不可多得的创客秘籍。
|
關於作者: |
谢作如:温州市百名领军教师,温州市名师,温州市551人才,浙江省教育科研先进工作者,温州大学客座研究员及硕士生导师,南京师范大学客座研究员,北京师范大学访问学者,浙江省中小学信息技术教育分会理事,中国教育技术协会信息技术专业委员会理事。2010年获菁华杯全国新课程中学优质课评选一等奖,2011年获全国高中信息技术优质课大赛特等奖。
|
目錄:
|
第1章Android和App Inventor11.1Android简介11.1.1智能手机与Android系统11.1.2Android系统的广泛应用21.2Android的应用开发工具41.2.1Android常见开发工具41.2.2Android图形化开发工具51.3App Inventor 2概述61.3.1App Inventor 2可以做什么61.3.2App Inventor 2在中国6第2章初识App Inventor 282.1App Inventor 2环境搭建82.1.1账户申请82.1.2登录App Inventor 292.1.3App Inventor 2程序调试92.1.4App Inventor 2操作界面132.2我的第一个App162.2.1新建项目172.2.2界面设计182.2.3编程实现202.2.4程序调试202.3基本组件与运算212.3.1基本组件212.3.2基本运算222.3.3基础任务1温度转换器242.4变量与流程控制272.4.1变量272.4.2基础任务2点我282.4.3流程控制的分支结构292.4.4基础任务3计算成绩等级302.4.5流程控制的循环结构322.4.6基础任务4计算前n个正整数的和322.5自定义过程与函数352.5.1过程的定义与调用362.5.2基础任务5过程362.5.3函数的定义与调用382.5.4基础任务6求和小程序382.6媒体组件392.6.1常用组件介绍392.6.2基础任务7音乐播放器402.7传感器组件432.7.1方向传感器组件432.7.2基础任务8指南针432.7.3位置传感器组件462.7.4基础任务9经纬度转换器472.7.5加速度传感器组件492.7.6基础任务10加速度观察器492.7.7计时器组件512.7.8基础任务11最后10秒钟51目录 跟我学App Inventor 2〖2〗〖2〗 〖1〗 第3章App Inventor 2的编程实践553.1App专题1健康测试仪553.2App专题2音乐摇摇乐613.3App专题3打地鼠653.4App专题4相片通信录713.5App专题5GPS计步器82第4章App Inventor 2和Arduino944.1Arduino和Mixly944.1.1Arduino简介944.1.2Mixly简介954.2基于蓝牙的串口通信964.2.1试验1将Arduino的串口信息显示在手机上974.2.2试验2用手机串口控制Arduino1014.3范例1手机控制的LED灯1034.3.1工作流程分析1034.3.2硬件连接1034.3.3界面设计1044.3.4编程实现1054.3.5程序调试1074.4范例2挥手机器人1094.4.1结构搭建1094.4.2运行原理分析1094.4.3界面设计1114.4.4编程实现1124.4.5程序调试1144.5让手机拥有更多传感器1154.5.1让手机显示外界温度1154.5.2接收多个传感器数据1184.5.3拓展应用122第5章App Inventor 2和Web1245.1App Inventor 2的网络组件1245.1.1网络微数据库及范例1245.1.2Web浏览框及范例1265.1.3Web客户端及范例1275.2Web客户端的高级应用1315.2.1中文编码和构建HTTP头部信息1315.2.2解析Json1355.3体验物联网技术1395.3.1中国移动物联网开放平台的设置1405.3.2编写GPS自动记录器1455.3.3物联网应用扩展1485.4App云服务器的设计1495.4.1App云服务器的设计1495.4.2App云用户管理系统的开发1505.4.3App云用户管理系统的应用1555.5综合范例听写神器1585.5.1开发背景1585.5.2工作原理分析1585.5.3服务器端和WebAPI的设计1595.5.4教师端的设计1625.5.5学生端的设计1635.5.6听写神器的使用说明166附录AApp Inventor 2离线版的安装与使用169附录BAI伴侣的安装与使用178参考文献184后记185
|
內容試閱:
|
第1章Android和App Inventor美国克莱蒙特大学德鲁克曾经说过: 预测未来的最好方式就是去创造未来。对着朝夕相处的智能手机时,你有没有想过有一天借助它改变生活?本章中,首先了解Android系统的发展史,再了解其强大的功能。当然,重点要关注Android图形化编程平台App Inventor 2。1.1Android简介[45]1.1.1智能手机与Android系统智能手机已成为现代生活通信领域中必不可少的工具之一,它改变了人们的生活方式。智能手机Smart Phone是指具有独立的操作系统,可通过安装应用软件、游戏等程序来扩充功能的手机,其运算能力与功能远比传统手机强大。智能手机的操作系统有谷歌公司开发的Android安卓系统、苹果公司的IOS系统、黑莓公司的Blackberry系统、微软的Windows Phone系统、火狐的Firefox OS系统和其他一些嵌入式Linux系统等。目前Android当仁不让,在手机系统市场中占据最大份额,已然成为全球应用最具影响力的手机操作系统。Android操作系统是由Google公司基于Linux内核推出的一款移动操作系统,具有Linux开源的特点,采用多任务处理,图形界面设计更加精美华丽。最初由安迪鲁宾Andy Rubin等人开发制作,2007年11月5日,由Google发起的开放手持联盟Open Handset Alliance发布了名为Android的开放手机软硬件平台。Android从英文Android机器人一词音译过来。不过Android一词最早出现于法国作家利尔亚当Auguste Villiers de lIsleAdam在1886年发表的科幻小说《未来夏娃》Lve Future中。他将外表像人的机器机器人起名为Android。Android操作系统曾有两个内部版本,并且以著名的机器人名称来对其进行命名,分别是阿童木Astro和发条机器人Bender。后来为避免商标问题,Google公司以诱人的甜品食物对Android各代系统进行标识命名。将这些甜点以大写首字母按顺序进行排列,分别是纸杯蛋糕Cupcake、甜甜圈Donut、闪电泡芙clair、冻酸奶Froyo、姜饼Gingerbread、蜂巢Honeycomb、冰激凌三明治Ice Cream Sandwich、果冻豆Jelly Bean、奇巧KitKat、棒棒糖Lollipop。如图11所示,Android操纵系统的名字就像是一个甜品盛宴。图11Android系统的各代标识1.1.2Android系统的广泛应用由于Android操作系统的开放性和可移植性,它可以被应用在智能手机、上网本、平板计算机、电视、机顶盒、电子书阅读器、MP3播放器、MP4播放器、掌上游戏机、家用主机、电子手表、电子收音机、汽车设备、导航仪、DVD等各种电子产品上。第1章Android和App Inventor 跟我学App Inventor 2[2][2] [1] 1. Android可穿戴设备Android WearAndroid可穿戴是一个专为智能手表等可穿戴设备设计的Android系统分支。可穿戴设备即直接穿在身上,或是整合到用户的衣服或配件上的一种便携式设备,如图12所示。通过可穿戴设备,用户可以随时随地获取信息,从社交网络、语音短信、购物消费、新闻消息到图片分享等。如果嫌触屏输入麻烦,还可以用语音来完成任务。此外,可穿戴设备更炫酷的功能之一是其可以进行个人健康信息的监测。戴上它就可以实时追踪统计并反馈你的健康数据信息。该设备还可以在危急时刻救人性命,就像一个完美的家庭医生。图12多样的Android可穿戴表2. Android智能家电只要拿着自己的手机或平板计算机轻轻一点或者对其说话,就能够控制家里的电视机、电冰箱、微波炉等各种家用电器。这不再只是科幻电影或者小说里的场景,Android系统已经让这些幻想变成可能,如图13所示。目前智能家电的价格还比较高,随着技术的不断成熟完善,相信Android智能家电终将飞入寻常百姓家。图13Android智能家电3. Android车载Android Auto图14Android车载Android车载主要有5个功能类别,分别是谷歌地图、电话 联系人、浏览记录、音乐、汽车状态,如图14所示。它的启动方式十分简单: 只需用一根普通的数据线将任意装有Android车载的Android手机平板和汽车相连接即可。Android车载与手机中所有的应用程序都是同步的,如果手机中的软件有更新或更换新的手机时,Android车载也会随之自动升级。这是该系统的最大优势,用户再也不用每两年更新一次导航数据库,也不用忍受过时的Android 车载技术。因为不管你的车有多旧,Android车载软件永远是最新的。2015年第一款搭载Android车载的量产车型面世,用户将Android L及更新版本的手机插入车的 USB 接口体验这套由 Google 带来的智能驾驶体验。Google称2016年登陆40款车型将使Android 车载覆盖全球,并支持更多应用,Android 车载前景相当乐观。想一想你认为未来Android系统还可以应用在哪些方面?1.2Android的应用开发工具[45]1.2.1Android常见开发工具Google公司提供了各个主要平台Windows、Mac、Linux兼容的开发工具包。该开发工具包中包含了Android手机模拟器,即使没有Android手机或Android平板,也能够在计算机上完成对所有的手机应用程式开发。Android Studio与Eclipse ADT是常见的两个开发工具,基于开源的Eclipse具有大量的用户,而Google公司主推的Android Studio则得到官方的强力推荐。1. Eclipse ADTEclipse是一个基于Java平台的可扩展开源开发平台。最初的Eclipse是IBM公司开发的替代商业软件Visual Age for Java的下一代IDE开发环境,2001年11月贡献给开源社区,现在它由非营利软件供应商联盟Eclipse基金会Eclipse Foundation管理。要想进行Android程序的开发,需要安装一个开发环境,即安装Android Development Tools插件。Android应用程序开发环境一般采用Java JDKJava开发环境、Eclipse 和 Android SDKAndroid专属的软件开发工具包模式。2. Android StudioAndroid Studio是一项全新的基于IntelliJ IDEA的Android开发环境。类似于Eclipse ADT插件,Android Studio提供了集成的Android开发工具用于开发和调试。在IDEA的基础上,Android Studio还提供了以下功能。1 基于Gradle的构建支持。2 Android 专属的重构和快速修复。3 提示工具以捕获性能、可用性、版本兼容性等问题。4 支持ProGuard 和应用签名。5 基于模板的向导来生成常用的 Android 应用设计和组件。6 功能强大的布局编辑器,可以让用户拖拉UI控件并进行效果预览。Android Studio一经推出便迅速受到Android开发者的青睐。2015年5月29日,在谷歌IO开发者大会上,谷歌发布Android Studio 1.3版,支持C编辑和查错功能。1.2.2Android图形化开发工具从影音播放、社交网络、聊天通信、日常生活、办公学习、拍照、美图甚至网购支付等,Android系统的应用已经深入到人们生活中的点点滴滴。那么,你是否萌生过这样的念头: 亲自动手制作一个手机应用程序,然后和家人、朋友甚至全世界的人一起分享你的应用程序。或许你底气不足,想到编程就头皮发麻。其实你无须担心,以App Inventor为代表的图形化开发工具,为零代码基础的人们带来了福音。App Inventor是一个基于云端的,以图形化形式编程的手机应用程序开发环境。它将枯燥的代码编程方式转变为积木式的图形化编程,同时不同功能代码的积木颜色也不同,这使手机应用程序的开发变得简单而有趣。即使不懂得编程语言的人,也可以开发出属于自己的手机应用程序。最初的App Inventor 由Google实验室于2010年7月推出,2011年8月对外开放源代码。随后交由麻省理工学院图15App Inventor 2图标移动学习中心The MIT Centre for Mobile Learning开发,于2012年3月对外开放使用,并更名为MIT App Inventor。2013年12月3日,App Inventor 2 简称AI2问世,其新版主页口号是Your idea, Your design, Your apps, Invent Now, 其图标如图15所示。之前的版本称为App Inventor Classic或者App Inventor 1,版本之间互不兼容。与App Inventor 1相比,App Inventor 2的最大优势在于其用Blockly取代了原来基于Java的积木编辑器,不需要安装插件,兼容性更好。Blockly是Google发布的完全可视化的编程语言,类似MIT的儿童编程语言Scratch,并且可以很好地运行在浏览器端。无须其他准备,打开浏览器就可以通过类似玩乐高玩具的方式,把一块块图形对象拼接起来即可构建出应用程序。想一想查阅资料,了解更多的Android开发工具,重点关注基于HTML 5的一些开发工具, 如WeX5、Maka等,并讨论这些工具和 App Inventor的区别。1.3App Inventor 2概述[45]1.3.1App Inventor 2可以做什么手机上常见的小游戏,如愤怒的小鸟、切水果、俄罗斯方块等,几乎都可以用App Inventor 2开发完成。除了开发小游戏,还可以编写各种小工具。建议初学者从学习检测教育软件音乐制作视频播放语音识别等几个方面去开发应用程序。虽然是图形化编程平台,但是App Inventor 2的功能一点都不弱。如果将手机应用程序的开发与网络相结合,App Inventor 2甚至可以设计微博、QQ应用、手机支付等移动应用程序。结合使用其他编程语言平台,App Inventor 2能完成更多复杂有趣的应用。App Inventor 2的具体应用如图16所示。图16App Inventor 2应用1.3.2App Inventor 2在中国国内的IT界、教育界人士一直关注着App Inventor 2这一新的Android应用开发工具,越来越多的学校以选修课的形式将App Inventor 2纳入课程体系,如汕头大学、中山大学、四川文理学院、哈尔滨工程大学等。除了高校外,部分省市也在中学积极推广App Inventor 2,如杭州市普通教育研究室以精品课程的形式在全市高中推广,温州市教学研究院和电教馆针对各个学校的创客指导师开展了App Inventor 2的培训活动,北京、金华、南京和广州等地都有学校开设了App Inventor 2方面的课程。为了让App Inventor 2在中国得到更好的推广,麻省理工学院为国内使用者专门搭建了备用服务器http:contest.appinventor.mit.edu。自由职业人金从军老师网名: 老巫婆为App Inventor 2的推广做了大量的工作。金老师翻译了David Wolber等著的App InventorCreate Your Own Android Apps一书,并以CC协议的形式开源;翻译了《App Inventor 2中文参考手册》;汉化了App Inventor 2编程平台,并提供编程体验服务器地址等。她还借助新浪博客http:blog.sina.com.cnjcjzhl平台分享自己的学习心得,与众多App Inventor 2爱好者在线交流。在她的影响下,越来越多的人加入App Inventor 2的编程之旅。《App Inventor 2中文参考手册》: http:www.17coding.netreference。App InventorCreate Your Own Android Apps中文版: http:www.17coding.net。App Inventor 2编程体验地址: http:ai2.17coding.net。2014年前后,国内网络无法正常访问MIT的服务器。考虑到备用服务器的速度太慢,国内开始有爱好者提供App Inventor 2离线版本。其中,影响力比较大的主要有金从军老师的中文汉化版和四川文理学院黄仁祥的离线版开发平台。2014年9月14日,MIT推出了App Inventor 2中文版本含简体和繁体。同年10月,在华南理工大学和美国麻省理工学院的直接支持下,广州市教育信息中心部署了国内首台App Inventor 2全功能镜像服务器。广州市教育信息中心的App Inventor 2平台取消诸多限制,界面更加友好,一经推广就广受好评,目前已经成为全国App Inventor 2主要的应用中心。广州市教育信息中心的App Inventor 2服务器地址: http:app.gzjkw.net。你学到了什么本章中,你学到了这些知识: Android操作系统及其应用; 常见的Android应用程序开发工具; App Inventor 2是一款基于浏览器的图形化编程平台; App Inventor 2在国内的发展。动手练一练1 查找历年的 Google IO大会,了解Android系统和谷歌其他新技术的发展历程。2 拿出一张白纸,写下你想用App Inventor 2开发的应用,并画出你要的App界面,以及各种功能说明。3 查阅资料,尝试自主搭建App Inventor 2离线开发环境。4 查阅资料,比较Eclipse ADT、Android Studio、App Inventor 2有何不同,你觉得Android Studio是否会取代Eclipse ADT?5 访问http:www.17coding.net,尝试编写一段App。第2章初识App Inventor 22.1App Inventor 2环境搭建App Inventor 2简称Ai2是完全基于云端的Android应用程序开发平台也叫作云端开发。通过浏览器登录Ai2云端官方服务器http:ai2.appinventor.mit.edu或备用服务器http:contest.appinventor.mit.edu,即可快速完成Android应用程序的开发。浏览器方面,推荐使用Google浏览器、火狐浏览器等。本书以广州教育信息中心搭建的服务器为例进行环境搭建。2.1.1账户申请App Inventor 2平台的登录需要一个账号,以便个人手机应用程序的保存。首先访问网址http:app.gzjkw.net,单击下方申请新账号重设密码链接,进入注册新账号或修改密码界面,输入电子邮箱账号,并填写相关注册信息,注册系统会根据注册用户所填信息进行邮箱验证。完成账号的注册后,就可登录App Inventor 2开发平台了。此外,该平台还支持使用QQ账号进行登录。App Inventor 2平台登录界面如图21所示。图21App Inventor 2平台登录界面2.1.2登录App Inventor 2在浏览器地址栏中输入http:app.gzjkw.net并按Enter键,进入登录界面,利用申请成功的账户名和密码完成登录。第一次登录App Inventor 2开发平台时,会出现条款提示的提醒界面,单击我接受以上条款即可进入App Inventor 2的开发界面,如图22所示。图22App Inventor 2开发界面第2章初识App Inventor 2 跟我学App Inventor 2[2][2] [1] 2.1.3App Inventor 2程序调试编程离不开调试,App Inventor 2应用程序需要在安卓手机上运行,相对来说,调试程序比Vb、Scratch之类要麻烦一些。经过总结,有以下3种方式可供参考,具体介绍如下。1. 应用程序调试方法一: 通过WiFi通信在Android手机或平板中完成调试利用该方法进行调试,开发者可实时观察到应用程序在Android设备上的运行效果。但前提是Android设备上要事先安装AI伴侣应用程序,并且该Android设备支持网络的访问。AI伴侣下载地址: http:app.gzjkw.netcompanionsMITAI2Companion.apk。具体操作步骤如下。1 在Android设备上,运行AI伴侣。2 在浏览器端的App Inventor 2开发环境中单击连接ConnectAI伴侣AI Companion,系统将自动生成一个二维码及二维码所对应的6位字母编码,如图23所示。3 启动Android设备中已安装的AI伴侣应用程序,直接输入该6位编码并单击Connect with code或者扫描二维码,设计好的应用程序将直接在Android设备的内存中运行。图23App Inventor 2二维码2. 应用程序调试方法二: 使用模拟器完成对应用程序的调试若没有手机或平板电脑等Android设备,可以采用App Inventor 2开发平台自带的模拟器来完成对应用程序的调试。该模拟器是用于测试应用程序的Android模拟运行环境,并不能完全模拟Android设备的功能,如加速度传感器、GPS定位传感器等。若使用模拟器来运行和调试开发者设计的应用程序,则须先在计算机上安装相应的模拟器服务器软件,具体操作步骤如下。1 下载并安装App Inventor Setup软件包又名Ai2 Starter,下载地址: http:appinv.usaisetup_windows。双击启动该软件包,按照软件安装向导进行安装注意: 必须使用管理员权限启动图24Ai2 Starter图标并安装该软件包。通常情况下,App Inventor 2 Setup软件会以默认的路径进行安装,但若安装该软件时出现询问软件安装路径时,请直接输入C: \\Program Files\\Appinventor\\commandsforAppinventor进行安装即可。若计算机操作系统为64位,请将ProgramFiles替换为ProgramFilesx86。完成该软件的安装后,计算机桌面将出现Ai2 Starter图标,如图24所示。2 启动Ai2 Starter。Ai2 Starter是App Inventor 2开发平台的辅助服务器,用于App Inventor 2开发平台上App应用程序调试,同时也是启动App Inventor 2开发平台模拟器的服务器。双击图24中的Ai2 Starter图标,即可启动该辅助服务器,图25所示的窗口即是启动完成的辅助服务器。图25Ai2 Starter辅助服务器启动界面3 启动App Inventor 2开发平台模拟器调试App应用程序。在App Inventor 2开发平台中单击连接菜单中的模拟器命令,稍等片刻即可出现一个对话框提示: 正在连接模拟器,可能需要几分钟时间。与此同时,在Ai2 Starter服务器窗口中会更新一些模拟器启动的信息。在Ai2 Starter服务器的运行下,手机模拟器将逐步启动并运行,图26所示为运行的模拟器,与Android手机界面相似。成功启动模拟器后,在接下去的
|
|