一介书生
一介书生
2021年05月03日入驻 合计 1 个作品 累计 24.01 万字
  • 第 24 章 与Web API通信

    移动技术再加上无所不在的网络,已经完全改变了我们生活的这个世界。如今坐在公园里就可以打理你的银行账户,或者在亚马逊书店搜索你正在阅读的图书的评论,或者查阅Twitter,看看世界上其他公园里的人们都在想些什么。手机只能打电话发短信的时代已经过去,它可以让你随时随地访问世界各地的数据。

    虽然用手机浏览器可以访问互联网,但由于屏幕太小,而且速度受到限制,因此使用者会感觉不适。如果能够定制应用,有针对性地从网络上提取少部分信息,以适应手机终端的特点,就可以获比浏览器得更具吸引力的替代方案。

    本章我们将领略从网络获取信息的各类应用,首先创建一个显示游戏排行榜的(图表)应用,然后以Yahoo财经频道的股票数据为例,讨论如何使用TinyWebDB从网上获取任意类型的信息(不只是图像),最后讨论如何创建属于自己的网络信息源,以用于App Inventor应用。
  • 第 23 章 传感器

    将你的手机指向天空,谷歌星空地图会显示出你正在观看的星群;倾斜手机,可以控制你的游戏;带着你的手机去散步,一款“面包渣儿”应用将记录下你的途经的路线。所有这些应用之所以能够实现,都是因为你所携带的移动设备装备了高科技的传感器,可以探测到位置、方向以及加速度。

    本章将再次讨论App Inventor的位置传感器、方向传感器以及加速度传感器等组件,其中将学习全球定位系统(GPS)、方向测量(如倾斜、旋转及摇晃)以及与处理加速度读数相关的数学知识。
  • 第 22 章 数据库

    Facebook的数据库中,有每位用户的账户信息、好友列表以及发布的信息,Amazon的数据库中有你能买到的任何东西,而Google的数据库中有互联网上的每个页面的信息。你自己的应用虽然没有那么大的规模,但一个正规的应用都会用到数据库组件。

    在大多数的编程环境中,编写与数据库通信的应用是一种高级编程技术:要搭建数据库(软件)服务器,如Oracle或MySQL等,并编写程序与数据库建立连接。在大学里,这些内容通常要在软件工程或数据库这样的高级课程中才会涉及。
  • 第 21 章 定义过程

    像App Inventor这类的编程语言通常会提供一组基本的内置功能,对于app inventor来说,就是一组基本块。编程语言还提供一种功能扩展的方法,即,向语言中添加新的子程序(块)。【在计算机科学中,子程序(英语:Subroutine, procedure, function, routine, method, subprogram),是一个大型程序中的某一部份代码,由一个或多个语句块组成。它负责完成某项特定任务,而且与其他代码相比,具备相对的独立性。——译者注】在App Inventor中,通过定义过程(procedure),即,命名一些顺序执行的块,来实现功能的扩展。应用中可以像调用App Inventor中的预定义块一样,调用这些过程。本章中你将看到,创建这样抽象的过程的能力对于解决复杂问题是非常重要的,这是创建真正好应用的基石。
  • 第 20 章 循环

    计算机最擅长做的事情就是“重复”——像儿童一样不厌其烦地重复做一件事,而且重复的速度很快,可以在1毫秒内列出你的全部Facebook好友。

    本章将学习如何用有限的几个块来编写可以重复执行的程序,而不必反复拷贝粘贴同一段代码;还将学习与列表有关的操作,如给电话号码列表中的每个号码发送一条短信,以及为列表项排序。通过学习,你将了解到如何用循环块来有效地简化程序。
  • 第 19 章 数据列表编程

    如你所见,应用就是处理事件以及作出决策,这一过程是计算机程序的基础,而同样构成程序基础的就是数据——程序所要处理的信息。程序中很少只用到像游戏中的成绩这样的单个数据,更普遍的是使用复杂数据——一些相互关联的数据项,必须像设计应用的功能一样,非常细心地组织这些数据。

    本章将探讨App Inventor中处理数据的方式,并学习两种数据类型的基本编程方法,两种数据类型为静态数据(数据的值保持不变)及动态数据(数据由用户生成),然后将学习如何处理更为复杂的包含数据的数据,即数据项本身也是一组数据。
  • 第 18 章 程序中的决策:条件块

    即使是像口袋里的手机这样小型的电脑,也可以在短短几秒钟内完成超过数千次的操作。更令人惊奇的是,它们可以基于内存中的数据以及程序员编写的逻辑进行决策。这种决策能力在人们所思考的人工智能问题中是极为关键的要素,当然也是创建有趣的智能应用的重要组成部分。本章将探索如何在应用中编写判断选择逻辑。
  • 第 17 章 创建动画应用

    本章将讨论创建另一类应用的方法,应用中使用了简单的可移动的动画对象。你将学习使用App Inventor创建二维游戏的基本知识,并熟练使用图片精灵(image sprite)及处理两个物体碰撞一类的事件。
  • 第 16 章 应用中的存储

    就像人类需要记忆一样,应用需要存储。本章将探究如何在应用中实现信息的存储。

    如果刚刚有人在电话里告诉你一家披萨店的电话号码,你的大脑中会留下一段记忆;这时,如果有人大声告诉你一串数字,并要你记住,你也会将它们保存到记忆中。在这种情况下,你未必能清楚地意识到,你的大脑是在保存或调用信息。

    应用同样具备记忆功能,但它的内在机制并不像大脑那样神秘。本章你将学习如何设置应用的存储功能,如何利用它来保存信息,以及之后如何提取这些信息。
  • 第 15 章 软件工程与应用调试

    前面几章中讲过的Hello猫咪、打地鼠以及其他应用都是些非常小的软件项目,并不需要用引入软件工程的概念。工程的概念借用自其他行业,意为设计并建造,教程中的应用就像是用预制件拼装起来的房屋模型,而软件工程才是设计并建造真正用来居住的房子。这个例子虽然稍显夸张,但一般来讲,某些极其复杂的建造过程,的确需要大量的前期构思、规划以及技术分析,这些过程都可以归结为工程。

    但凡接手过一个相对复杂的项目,你就会理解,只要在功能上稍稍增加一点复杂度,软件工程的复杂程度就会急剧增加,两者之间绝对不是线性的关系。对于我们大多数人来说,在真正开始面对这样残酷的现实之前,我们很少能够意识到将要面临的困顿。从这个意义上讲,你要准备学习更多的软件工程的原则及调试技巧。如果你已经认可这一点,或者,你是为数不多的、希望通过掌握一些技术来克服成长障碍的人,那么本章就是为你准备的。
  • 第 14 章 理解应用的结构

    本章将从程序员的视角来探讨应用的结构问题。先从一个经典的比喻开始,将应用理解为一份菜谱,然后再从组件的角度,理解其对事件的响应,从而对应用产生新的认识。本章还将探讨应用如何提问、重复、记忆以及与Web交互,所有这些在后面章节均有更详细的叙述。
  • 第 13 章 亚马逊掌上书店

    假设你正在一家你很喜欢的书店里翻书,你想了解某一本书在Amazon.com(网上书店)的售价,那么这款“亚马逊掌上书店”应用就可以帮你实现这一愿望。通过扫描书上的条码,或输入书上的ISBN,应用将告诉你这本书当前在Amazon.com的最低售价。你也可以按照主题进行书籍的搜索。

    “亚马逊掌上书店”演示了如何使用App Inventor来创建与web service进行交互的应用(web service又称作API 或应用程序接口)。本应用将从一个web services上获取数据,该web services是由本书的作者之一创建的。由本章结束时,你将为自己创建一款定制的应用,来访问亚马逊网上书店。

    该应用界面非常简单,用户可以输入关键字或书的ISBN 码,应用将列出书名、ISBN以及新书在亚马逊上的最低售价。也可以使用条码扫描组件,让户可不必输入文本,而是通过扫描来进行搜索(从技术上讲,是扫描仪替你输入了书的ISBN!)。
  • 第 12 章 遥控机器人

    本章将创建一个应用,将Android手机变成LEGO MINDSTORMS NXT 机器人的遥控器。应用中用按钮来控制机器人前后移动、左右转动和停止,如果机器人遇到障碍物,它还会自动停止。应用中使用具有蓝牙功能的手机与机器人通信。
  • 第 11 章 广播中心

    FrontlineSMS 是一款工具软件,用于联络那些无法访问互联网但可以用手机通信的人,通常用于互联网尚未普及地区的选举监督、天气预报广播等。软件作者Ken Banks借助于移动通信技术为人们提供帮助,他的贡献大概无人能及。

    FrontlineSMS运行在连接了手机的电脑上。电脑和手机共同构成一个短信中转站,为群内人员提供文本通信服务。无法上网的人可以发送一个特殊代码来加入群,随后他们会收到来自中转站的各种广播消息。这个中转站我们称之为“广播中心”,对于那些没有网络的地方,广播中心成为与外界联系的重要手段。

    使用App Inventor可以创建自己的短信处理应用。有趣的是,应用需要运行在一部android设备上,但应用的用户却不必使用Android手机,他们可以用任何手机,智能的或非智能的,与应用之间进行短信的交流。应用虽然具有图形化的用户界面(GUI),但GUI仅供应用的管理者使用,用来监控应用中的各种活动。

    本章将创建一个与FrontlineSMS功能类似的广播中心,不过是运行在Android手机上。一台具有中转枢纽作用的移动设备,意味着管理者可以在移动中保持交流,这一点在某些场合下尤其重要,如选举监督和医疗争议谈判。

    假想有一个“快闪舞蹈团”(FlashMob Dance Team,缩写为FMDT),他们可以召之即来,随时随地表演舞蹈,然后瞬间解散,消失得无影无踪,他们用你创建的广播中心来组织表演活动。人们只要向中心发送短信“joinFMDT”(参加快闪舞蹈团),即可完成入团注册,每个注册成功的人都可以向舞蹈团中的其他人广播消息。
  • 第 10 章 出题及答题

    第8章的“总统测验”可以被定制成各种测验,但这种定制只对App Inventor程序员有用。只有程序员可以修改问题和答案,而对于父母、老师或其他用户来说,他们无法创建一个测验或变换问题(除非他们也学App Inventor!)。

    本章将构建一个“出题”应用,“老师”可以在输入表单中创建试题。试题和答案将被存储在Web数据库中,以便“学生”可以单独访问“答题”应用并参加考试。通过创建这两个应用,你会在概念上产生更大的飞跃,并学习如何创建一个应用,让用户自行生成数据,并实现用户之间跨应用的数据共享。
  • 第 9 章 木琴

    很难相信,利用技术来记录和播放音乐只能追溯到1878年,也就是爱迪生获得留声机专利时。时至今日,我们已经有了长足的进步,音乐合成器、光盘、采样和混音、播放音乐的手机,甚至是拥塞的远程互联网。在本章中,通过创建一个可以录制和播放音乐的木琴应用,你也将成为这种进步的推动者。
  • 第 8 章 总统测验

    “总统测验”是一个关于美国前总统的问答游戏。虽然测验的内容与总统有关,但你可以把它当作模板,来实现对任何题目的测验。

    在前几章中,你已经了解了一些编程的基本概念。现在,准备好面对更大的挑战吧。你会发现,无论是编程技巧,还是抽象思维,这一章都要求你有一个概念性的飞跃。特别需要强调的是,本章将使用两个列表变量来存储数据——应用中的问题和答案,使用索引变量来跟踪用户正在回答的题目。在本章结束时,对于创建测验类应用和其他需要使用列表的应用,你已经掌握了必要的知识。

    本章假设你已经熟悉了App Inventor的基础知识:使用组件设计器构建用户界面,用块编辑器来定义事件处理程序并为组件添加行为。如果你还不熟悉,在继续学习之前,请复习前面几章。

    在测验中,用户通过单击“下一题”按钮,连续地回答问题,并收到回答是否正确的反馈。
  • 第 7 章 安卓,我的车在哪?

    你把车停得尽量靠近体育馆,但演唱会一结束,你却忘了车停在哪儿,你的同伴也很茫然。幸运的是,你的Android手机还在,它从来不忘事,你新装了一款热门应用“Android,我的车在哪儿?”有了这个应用,在停车时点一下按钮,Android的位置传感器会“记住”车的GPS坐标和地址。当稍后重新打开应用时,它会指给你从现在位置到停车位置的方向,问题解决了!
  • 第 6 章 巴黎地图旅游

    本章将创建一个“向导”应用,带给你一次巴黎的梦幻之旅。而你的朋友,虽然不能与你同行,也能借此做一次虚拟的巴黎之旅。创建一个完整的地图应用看似复杂,不过App Inventor提供了ActivityStarter组件,可以为每个选定的虚拟位置打开对应的谷歌地图。创建过程分为两步,首先通过点选菜单打开埃菲尔铁塔、卢浮宫以及巴黎圣母院的地图;然后修改有关参数,使应用同时适用于卫星视图及普通地图视图。
  • 第 5 章 瓢虫快跑

    游戏是移动应用中最令人兴奋的部分,无论是玩游戏,还是做游戏。最近红极一时“愤怒的小鸟”,根据开发者Rovio公司称,第一年下载量达50万次,同时每天运行的人时数超过一百万小时。(甚至有人说要把它拍成故事片!)我们可无法保证电影的成功,但可以让您用App Inventor创建自己的游戏“瓢虫快跑”,里面的瓢虫要吃蚜虫,同时要避免被青蛙吃掉。
  • 前一页 后一页