【App Inventor数据可视化】 使用电子表格和图表附录B:为Goo...
本帖最后由 szjuliet 于 2023-9-22 20:08 编辑【App Inventor数据可视化】 使用电子表格和图表附录B:为Google表格创建一个凭证
Part 1:通过图表理解数据
Part 2:通过比较数据集加深理解
Part 3:通过比较多个例子收集证据
Part 4:在App中添加数学模型
附录A:将app连接到自己的数据集
附录B:为Google表格创建一个凭证
## 学习目标
在本指南中,你将:为Google Sheets创建一个凭证,以读取和写入私有电子表格
## 1. 考虑你是否需要一个Google Sheets凭证!
* “凭证”是来自谷歌的长密码,允许你的app连接到Google Sheets的电子表格。
* 密码以小的计算机文件的形式出现,你可以将其上传到App Inventor以用于你的app。
* 只有下面高亮情况才需要使用本指南来生成自己的凭证。

**注意:**
* 想知道你的电子表格是公共的还是私有的,在Google Sheets检查以下设置:

* 如果你不想操作生成凭证的步骤,把你的私有电子表格改成公共的 -- 只要电子表格里没有敏感数据。

## 2. 如何创建Google Sheets凭证
以下是本指南创建凭证步骤的快速概述:
* 准备好你的Google账号的用户名和密码。(或者免费创建一个谷歌账户。)
* 使用你的Google密码启动Google Developer帐户(同样免费)
* 作为开发人员创建一个服务账户
* 用Google Sheets建立一个编码项目
* 下载服务帐号密钥,并复制服务帐号邮箱地址
* 当需要将 app 连接到Google Sheets时,将密钥上传到App Inventor。使用服务帐户电子邮件地址来在线访问你的私有电子表格。
## 3. 创建谷歌开发者账户。
* 你有标准的Google邮箱或Google Drive账号吗?如果没有,请在*www.google.com*上创建一个帐户。
* 使用你的Google帐户用户名和密码登录 *developers.google.com*。


## 4. 创建一个“项目”
* 谷歌将你的开发工作组织到你命名和建立的各种项目中。参照以下步骤创建一个编码项目。
* 当使用步骤3登录到你的谷歌开发者账户后,转到 *console.developers.google.com*。
* 如果这是你第一次使用你的谷歌开发者账户,你会看到一个服务条款的提示。勾选复选框并继续。

* 在开发者面板上,点击CREATE PROJECT创建一个项目。

**注意**:如果你之前已经在Google Cloud中创建过项目,你的屏幕将如下面的图所示。
* 点击图示的框:

* 点击NEW PROJECT:

* 在新建项目页面,给项目起一个名字。名字不重要。在本例中,我们将其命名为“My Applesauce App”。

* 编码项目不需要提供组织,所以将其设置为No organization。

* 单击“CREATE”。

**译注:**
谷歌的免费项目是有配额的,我以前开发过App Inventor项目,所以不会出现“CREATE PROJECT”按钮。点击自己的项目,NEW PROJECT显示配额已达到上限。跟随指引可以发送一个申请配额的请求。我申请增加的配额是5个。没多久就收到了邮件,配额通过了。



## 5. 启用Google Sheets API。
* 点击+ ENABLE APIS AND SERVICES。(API是Application Programming Interfaces app编程接口的缩写,是通过互联网连接到服务的标准方式。想了解更多,请看我们的[餐馆比喻](https://docs.google.com/presentation/d/1bn8a6V51kzWW9JOustT8yCHkZsSaMwX3DjGO11U59bM/edit?usp=sharing)。)

* 在搜索栏中输入“Google Sheets API”并选择匹配的条目。

下图是我在自己账号中的操作:

* 单击“启用”。

* 你应该看到这个屏幕:

我自己账号下操作:

## 6. 创建服务帐户和凭据。
* 为Google Sheets API创建一个服务帐户。服务帐户提供了唯一的电子邮件地址和密码(凭证),以便作为程序员访问Google Sheets。
* 在屏幕右侧,单击CREATE CREDENTIALS。

* 操作向导会问你正在做什么样的项目。顶部的“Which API are you using ?”,选择的应该是“Google Sheets API”。如果没有选项,点出下拉框选择这个选项。

* 在“What data will you be accessing?”下选择“**Application data**”。

* 在“Are you planning to use this API with Compute Engine, Kubernetes Engine, App Engine, or Cloud Functions?”这个问题下,选择“**No, I’m not using them.**。”

* 单击“NEXT”。

* 你应该看到创建服务帐户的屏幕:

* 填写**service account name**。用什么名字不重要。在本指南中,我们将其命名为“example-service”。

* 点击“ **CREATE AND CONTINUE** ”

* 在“Select a Role选择角色”下拉菜单中,选择“**Owner**”以授予此服务帐户足够的权限。(如果稍后返回菜单,它会在“Owner”下提供更多选项,但你可以忽略它们。)


* 按“**DONE**”。(忽略“3 Grant Users Access to this Service”。)

## 7. 从你的服务帐户下载一个密钥(并保证它的安全!)。
* 密钥就像一个密码,你可以用它来让你的app访问Google Sheets API。在制作app时,你将使用App Inventor中的密钥(App Inventor中的属性是CredentialsJSON)。
* 根据你的帐户,你可能在以下其中一页。单击**Credentials**选项以进入凭证列表。你可以看到这个页面:

* 或下面这个页面:


* 进入**Credentials**页面后,点击你的**Service Account**:

* 点击KEYS。

* 单击“ADD KEY”。

* 在“Key type”下选择**JSON**。该网站将下载一个包含长密码的文件到你的计算机。该文件格式称为JSON (JavaScript Object Notation)。

* **确保JSON文件的安全!** 将此文件移动到计算机上易于记忆的位置。当在App Inventor中使用电子表格组件时,你需要上传这个JSON文件以使app正常工作。
## 8. 复制你的服务帐户电子邮件地址。
* 复制与你的服务帐户相关联的电子邮件地址。当使用Google Sheets和app时,你将使用此地址。

* 确保保存完整的电子邮件地址。
* 把地址粘贴到手机或电脑的某个地方,以便稍后找到。(如果你丢失了它,你仍然可以登录到你的开发者控制台再次复制它。)
## 9. 在你的app中使用你的新凭证!
* 将你的新凭证添加到app。
* 在组件设计中,选择一个Spreadsheet组件并查看CredentialsJson属性
* 是否有现有的App Inventor凭证(如图所示)?你可以删除App Inventor凭证或简单地将凭证更改为你自己的。

* 要添加凭证,请单击**CredentialsJson**框。

* 点击**Upload File**,在你的硬盘上找到你的Google Sheets凭证(如“[数据在行动:在MIT App Inventor中使用电子表格和图表](https://docs.google.com/document/d/1J8xJopoU9gSBgdGVTBedoitlO8qZbomheNW7MoRmgVo/edit?usp=share_link)”指南中所述),并将其上传到你的app。

* 上传成功后应该是这样的:

* 将你的服务帐户电子邮件添加到你想要设置为私有的Google Sheets电子表格中(“Restricted受限”)
* 在“Google Sheets”中单击“共享设置”,将电子表格设置为“**Restricted**”。

* 点击“Add people and groups”

* 添加上述创建的服务帐户邮箱。

页:
[1]