網頁

2022年11月17日 星期四

手機 App 程式設計- AppInventor2 -Google 表單

 主題

        設計一個可以App,可以在手機輸入訊息,傳送到 Google 表單。

功能

  • 設計二個欄位,姓名和訊息,可以讓使用者輸入文字,按送出,將這些文字傳送到Google 表單。

執行畫面


按「送出」,可在 Google 表單,看到結果。

可在 Google 試算表,看到結果。


素材

本 app的 icon (圖示),可自己繪製或網路搜尋。


進入 Appinventor 

Google 輸入 appinventor,選 「MIT App Inventor」。


選 「Create Apps!」。


網址為 :http://ai2.appinventor.mit.edu/

開新專案,Projects/Start new projec,輸入專案的名稱,如 App2Form,按 「OK」鈕 。
(專案的名稱只能使用大小寫字母、數字及「 _」符號,名稱的第一個字元必須是英文字母,不能使用中文字。)

Designer  (畫面編排)

Screen1:


Screen1 元件相關屬性表

元件

類別

屬性

功能

Screen1

 

Title:App to Google Form
AppName:App2Form,可以改成 Google表單」(出現在手機上面的App名稱)
Icon :None

1Screen元件就是1個螢幕 (畫面)

HorizontalArrangement1

Layout(介面配置)

AlignVertical:Center:2(垂直對齊,居中:2 )
Width:Fill Parent (填滿)

水平配置元件,讓裏面的元件可以水平對齊。

Label_Name

User Interface(使用者介面)

FontSize:20
Text:姓名:

標籤

TextBox_Name

User Interface

FontSize:20
Width:Fill Parent
Hint: (清空),不要有提示文字
Text:(清空)

文字方塊,可以輸入或顯示文字

HorizontalArrangement2

Layout(介面配置)

AlignVertical:Center:2(垂直對齊,居中:2 )
Width:Fill Parent (填滿)

水平配置元件,讓裏面的元件可以水平對齊。

Label_Message

User Interface(使用者介面)

FontSize:20
Text:訊息:

標籤

TextBox_Message

User Interface

FontSize:20
Width:Fill Parent
Hint: (清空),不要有提示文字
Text: (清空)

文字方塊,可以輸入或顯示文字

Button_Send

User Interface

FontSize:20
Text:
送出

按鈕

Web1

Connectivity(通訊)

 

網路,可提供 HTTP GET, POST, PUT 以及 DELETE 等功能


註:選 HorizontalArrangement1, 按 Ctrl+C, 再按 Ctrl +V , 相似的元件可以用這種方法快速複製建造出來,再修改元件名稱。

先設計好Google 表單


使用Google 表單的功能,先設計好一個表單,檔名如:App2GoogleForm。
有二個題目:
姓名和訊息,類型都是簡答題,啟用「必填」此選項。



















按右上方的「預覽」鈕。
填好測試資料,如「姓名」輸入 a ,「訊息」 輸入 b。
按「提交」鈕。



選取上面的網址,按Ctrl +C。

程到Windows 視窗左下方的「視窗」圖示。
按右鍵,選「執行」。

輸入 notepad,按「確定」鈕。叫出 「記事本」。

在「記事本」,按Ctrl +V,將表單的網址貼上。網址最後面 有 「formResponse」 此字樣。

切換到 設計Google 表單的畫面,按右上方的更多選項 (有三個小點的)圖示,選「取得預先填入的連結」。

輸入測試資料,如「姓名」輸入 a ,「訊息」 輸入 b。按「取得連結」。

按下面的「複製連結」。

在「記事本」,按Ctrl +V,將網址貼上。網址最後面有2個 entry,如下例: entry.1463103457=a&entry.194222978=b。

Blocks(程式設計)拼塊

跟元件有關的拼塊,要先點選該元件後,再選擇是那一個拼塊;不是元件的拼塊,可以根據拼塊的顏色,判斷是屬於那一個類別。

Screen1:


----------------------------------------------------------------
說明:
第1 個字串,是 複製 記事本內的 「formResponse 」此網址。
entry  是複製 記事本內的 「entry 」此部份網址。
第1個entry 前面要加上「 ?」,第2個entry 前面要加上「 &」,如果還有第3個 entry,前面都是加上 「&」。
----------------------------------------------------------------

問題

如果是使用 機構發給的帳號,來設計Google 表單,預設有設權限,會造成用手機來填寫表單,Google 表單沒有看到結果,這是因權限的問題,修改方法如下:
進入Google 表單,選「設定」。
按「回覆」右邊的 向下 箭頭展開。



「僅限臺中家商及其信任網域中的使用者」,向左滑動,改為 不要啟用的狀態。
這樣子,一般人使用手機填寫此App,才能把資料送到 Google 表單。