為了幫助大家快速的上手HarmonyOS應用程序開發,官方制作了一些免費的課程:HarmonyOS第一課。每個課程后面都有一些練習題,下面就是這些題目的滿分答案。
【習題】運行Hello World工程
判斷題
1.DevEco Studio是開發HarmonyOS應用的一站式集成開發環境。 (正確)
2.main_pages.json存放頁面page路徑配置信息。(正確)
單選題
1.在stage模型中,下列配置文件屬于AppScope文件夾的是?(C)
A. main_pages.json
B. module.json5
C. app.json5
D. package.json
多選題
1.如何在DevEco Studio中創建新項目?(B C)
A. 在計算機上創建一個新文件,并將其命名為“new harmonyOS項目”
B. 如果已打開項目,從DevEco Studio菜單選擇’file>new>Create Project’
C. 如果第一次打開DevEco Studio,在歡迎頁點擊“Create new Project”
2.module.json5配置文件中,包含了以下哪些信息?(A B D)
A. ability的相關配置信息
B. 模塊名
C. 應用的版本號
D. 模塊類型
【習題】ArkTS基礎知識
判斷題
1.循環渲染ForEach可以從數據源中迭代獲取數據,并為每個數組項創建相應的組件。(正確)
2.@Link變量不能在組件內部進行初始化。(正確)
單選題
1.用哪一種裝飾器修飾的struct表示該結構體具有組件化能力?(A)
A. @Component
B. @Entry
C. @Builder
D. @Preview
2.用哪一種裝飾器修飾的自定義組件可作為頁面入口組件?(B)
A. @Component
B. @Entry
C. @Builder
D. @Preview
多選題
1.下面哪些函數是自定義組件的生命周期函數?(A B C D E)
A. aboutToAppear
B. aboutToDisappear
C. onPageShow
D. onPageHide
E. onBackPress
2.下面哪些裝飾器可以用于管理自定義組件中變量的狀態?(C D)
A. @Component
B. @Entry
C. @State
D. @Link
【習題】應用程序框架
判斷題
1.一個應用只能有一個UIAbility。(錯誤)
2.創建的Empty Ability模板工程,初始會生成一個UIAbility文件。(正確)
3.每調用一次router.pushUrl()方法,頁面路由棧數量均會加1。(錯誤)
單選題
1.API9及以上,router.pushUrl()方法,默認的跳轉頁面使用的模式是哪一種?(A)
A. standard
B. Single
C. Specified
2.UIAbility啟動模式需要在module.json5文件中配置哪個字段?(C)
A. module
B. skills
C. launchType
D. abilities
多選題
1.API9及以上,router.pushUrl()方法的mode參數可以配置為以下哪幾種跳轉頁面使用的模式?(A B)
A. Standard
B. Single
C. Specified
2.UIAbility的生命周期有哪幾個狀態?(A C D F)
A. Create
B. WindowStageCreate
C. Foreground
D. Background
E. WindowStageDestroy
F. Destroy
3.UIAbility有哪幾種的啟動模式?(A B C)
A. multiton
B. singleton
C. specified
【習題】構建漂亮的頁面
判斷題
1.在Column容器中的子組件默認是按照從上到下的垂直方向布局的,其主軸的方向是垂直方向,在Row容器中的組件默認是按照從左到右的水平方向布局的,其主軸的方向是水平方向。(正確)
2.List容器可以沿水平方向排列,也可以沿垂直方向排列。(正確)
3.當Tabs組件的參數barPosition為BarPosition.End時,頁簽位于頁面底部。(錯誤)
4.Resource是資源引用類型,用于設置組件屬性的值,可以定義組件的顏色、文本大小、組件大小等屬性。(正確)
單選題
1.使用TextInput完成一個密碼輸入框,推薦設置type屬性為下面哪個值?(B)
A. InputType.Normal
B. InputType.Password
C. InputType.Email
D. InputType.Number
2.使用Image加載網絡圖片,需要以下那種權限?(B)
A. ohos.permission.USE_BLUETOOTH
B. ohos.permission.INTERNET
C. ohos.permission.REQUIRE_FORM
D. ohos.permission.LOCATION
3.下面哪個組件層次結構是錯誤的?(C)
A. List>ListItem>Column
B. Column>List>ListItem
C. Grid>Row>GridItem
D. Grid>GridItem
多選題
1.Row容器的主軸是水平方向,交叉軸是垂直方向,其參數類型為VerticalAlign (垂直對齊),VerticalAlign 定義了以下幾種類型?(A B E)
A. Top
B. Bottom
C. Start
D. End
E. Center
2.下面哪些組件是容器組件?(B C)
A. Button
B. Row
C. Column
D. Image
E. TextInput
3.關于Tabs組件頁簽的位置設置,下面描述正確的是?(A B C D)
A. 當barPosition為Start(默認值),vertical屬性為false時(默認值),頁簽位于容器頂部。
B. 當barPosition為Start(默認值) ,vertical屬性為true時,頁簽位于容器左側。
C. 當barPosition為End ,vertical屬性為false(默認值)時,頁簽位于容器底部。
D. 當barPosition為End ,vertical屬性為true時,頁簽位于容器右側。
【習題】構建更加豐富的頁面
判斷題
1.@State修飾的屬性不允許在本地進行初始化。(錯誤)
2.@CustomDialog裝飾器用于裝飾自定義彈窗組件,使得彈窗可以自定義內容及樣式。(正確)
3.將Video組件的controls屬性設置為false時,不會顯示控制視頻播放的控制欄。(正確)
4.@Prop修飾的屬性值發生變化時,此狀態變化不會傳遞到其父組件。(正確)
單選題
1.使用Video組件播放網絡視頻時,需要以下哪種權限?(B)
A. ohos.permission.READ_MEDIA
B. ohos.permission.INTERNET
C. ohos.permission.WRITE_MEDIA
D. ohos.permission.LOCATION
2.下列哪種組合方式可以實現子組件從父子組件單向狀態同步。(C)
A. @State和@Link
B. @Provide和@Consume
C. @State和@Prop
D. @Observed和@ObjectLink
多選題
1.下列哪些狀態裝飾器修飾的屬性必須在本地進行初始化。(A D)
A. @State
B. @Prop
C. @Link
D. @Provide
E. @Consume
2.ArkUI提供了下面哪些彈窗功能。(A B C D E)
A. AlertDialog
B. TextPickerDialog
C. DatePickerDialog
D. @CustomDialog
E. TimePickerDialog
【習題】屬性動畫
判斷題
1.屬性動畫中產生動畫的屬性可以在任意位置聲明。(錯誤)
2.屬性動畫中改變屬性時需觸發UI狀態更新。(正確)
單選題
1.屬性animation可以在哪些組件中使用?(C)
A. 只能基礎組件
B. 只能容器組件
C. 基礎組件和容器組件
D. 以上都不對
2.屬性動畫中如何設置反向播放?(D)
A. PlayMode.Normal
B. PlayMode.Alternate
C. PlayMode.AlternateReverse
D. PlayMode.Reverse
3.下面哪種情況不會回調onFinish函數?(C)
A. delay設置為 0
B. tempo設置為 1
C. iterations設置為 -1
D. playMode設置為 PlayMode.Reverse
4.屬性動畫中關于animation參數說法錯誤的是?(B)
A. 參數tempo默認值為1.0
B. 參數delay不能大于duration
C. 參數curve可以不設置
D. 參數iterations可以不設置
多選題
1.屬性動畫支持哪些屬性?(A B C D)
A. width
B. rotate
C. opacity
D. scale
2.屬性動畫中animation的參數有哪些?(A B C D)
A. playMode
B. curve
C. delay
D. onFinish
【習題】從網絡獲取數據
判斷題
1.在http模塊中,多個請求可以使用同一個httpRequest對象,httpRequest對象可以復用。(錯誤)
2.使用http模塊發起網絡請求后,可以使用destroy方法中斷網絡請求。(正確)
3.Web組件onConfirm(callback: (event?: { url: string; message: string; result: JsResult }) => boolean)事件,返回false時候觸發網頁默認彈窗。(正確)
單選題
1.使用http發起網絡請求,需要以下哪種權限?(B)
A. ohos.permission.USE_BLUETOOTH
B. ohos.permission.INTERNET
C. ohos.permission.REQUIRE_FORM
D. ohos.permission.LOCATION
2.向服務器提交表單數據,以下哪種請求方式比較合適?(B)
A. RequestMethod.GET
B. RequestMethod.POST
C. RequestMethod.PUT
D. RequestMethod.DELETE
3.下列關于Web組件的屬性,描述錯誤的是?(C)
A. 設置是否開啟應用中文件系統的訪問,默認啟用。$rawfile(filepath/filename)中rawfile路徑的文件不受該屬性影響而限制訪問。
B. imageAccess設置是否允許自動加載圖片資源,默認允許。
C. javaScriptAccess設置是否允許執行JavaScript腳本,默認不允許執行。
D. zoomAccess設置是否支持手勢縮放,默認允許執行縮放。
4.關于請求返回的響應碼ResponseCode,下列描述錯誤的是?(D)
A. ResponseCode.OK的值為200,表示請求成功。一般用于GET與POST請求。
B. ResponseCode.NOT_FOUND的值為404,表示服務器無法根據客戶端的請求找到資源(網頁)。
C. ResponseCode.INTERNAL_ERROR的值為500,表示服務器內部錯誤,無法完成請求。
D. ResponseCode.GONE的值為404,表示客戶端請求的資源已經不存在。
多選題
1.Web組件支持下列哪些屬性或事件?(A B D)
A. fileAccess(fileAccess: boolean)
B. javaScriptAccess(javaScriptAccess: boolean)
C. on(type: ‘headerReceive’, callback: AsyncCallback): void
D. onConfirm(callback: (event?: { url: string; message: string; result: JsResult }) => boolean)
E. destroy(): void
2.關于http模塊描述正確的是?(A B C D)
A. http請求支持get、post、put等常用的請求方式。
B. 可以使用on(‘headersReceive’)訂閱請求響應頭。
C. post請求的參數可以在extraData中指定。
D. 執行createHttp成功后,返回一個httpRequest對象,里面包括request、destroy、on和off方法。
3.關于Web組件描述正確的是?(A B C D)
A. Web組件是提供具有網頁顯示能力的一種組件。
B. Web組件傳入的地址可以是本地資源也可以是網絡資源。
C. WebController可以控制Web組件的各種行為,例如網頁的前進、后退等功能。
D. 當訪問在線網頁時,需添加網絡權限。
【習題】保存應用數據
判斷題
1.首選項是關系型數據庫。(錯誤)
2.應用中涉及到Student信息,如包含姓名,性別,年齡,身高等信息可以用首選項來存儲。(錯誤)
3.同一應用或進程中每個文件僅存在一個Preferences實例。(正確)
單選題
1.使用首選項要導入的包是哪個?(B)
A. @ohos.data.rdb
B. @ohos.data.preferences
C. @ohos.router
D. @ohos.data.storage
2.首選項的數據持久化后是放在哪里?(C)
A. 內存中
B. 數據庫表中
C. 文件中
D. 云端
3.下面哪個接口不是首選項提供的API接口?(B)
A. get()
B. update()
C. put()
D. flush()
多選題
1.HarmonyOS提供的數據管理的方式都有哪些?(A B C D)
A. 首選項
B. 分布式數據服務
C. 關系數據庫
D. 分布式數據對象
2.下面說法正確的有?(B C D)
A. 首選項遵循ACID特性
B. 首選項以Key-Value形式存取數據
C. 首選項存儲數據數量建議不超過1萬條
D. 首選項的key為String類型
【習題】給應用添加通知和提醒
判斷題
1.構造進度條模板通知,name字段當前需要固定配置為downloadTemplate。(正確)
2.給通知設置分發時間,需要設置showDeliveryTime為false。(錯誤)
3.OpenHarmony提供后臺代理提醒功能,在應用退居后臺或退出后,計時和提醒通知功能被系統后臺代理接管。(正確)
單選題
1.將通道設置為下面哪個類型,可以顯示橫幅通知?(A)
A. SlotType.SOCIAL_COMMUNICATION
B. SlotType.SERVICE_INFORMATION
C. SlotType.CONTENT_INFORMATION
D. SlotType.OTHER_TYPES
2.下列哪個是從API 9 開始支持的后臺代理提醒功能模塊。(A)
A. @ohos.reminderAgentManager
B. @ohos.reminderManager
C. @ohos.reminderAgent
D. @ohos.notificationManager
多選題
1.下面哪些方法可以移除通知?(A B)
A. cancel
B. cancelAll
C. removeSlot
2.后臺代理提醒業務分為哪幾種類型。(A B C)
A. 倒計時類
B. 日歷類
C. 鬧鐘類
D. 日程類
【習題】HarmonyOS應用/元服務上架
判斷題
1.元服務發布的國家與地區僅限于“中國大陸” (正確)
2.編譯打包的軟件包存放在項目目錄build > outputs > default下 (正確)
單選題
1.創建應用時,應用包名需要和app.json5或者config.json文件中哪個字段保持一致? (C)
A. package
B. name
C. bundleName
2.發布應用時需要創建證書,證書類型選擇什么類型?(B)
A. 調試證書
B. 發布證書
3.發布應用時需要創建Profile時,類型選擇什么類型? (B)
A. 調試
B. 發布
4.上傳發布軟件包時,軟件包的格式是什么?(B)
A. .zip
B. .app
C. .apk
D. .hap
5.發布后的應用可以在哪里獲取?(A)
A. 華為應用市場
B. 華為服務中心
C. 華為生態市場
【習題】三方庫
判斷題
1.三方組件是開發者在系統能力的基礎上進行了一層具體功能的封裝,對其能力進行拓展的工具 。(正確)
2.可以通過ohpm uninstall 指令下載指定的三方庫(錯誤)
3.lottie使用loadAnimation方法加載動畫。(正確)
單選題
1.通過ohpm安裝lottie后,在哪個文件中會生成相關的配置信息?(B)
A. module.json5
B. oh-package.json5
C. app.json5
D. main_page.json
2.lottie訂閱事件的API為?(C)
A. lottie.setSpeed()
B. lottie.setDirection()
C. animationItem.addEventListener()
D. animationItem.removeEventListener()
多選題
1.下列屬于lottie提供的動畫控制API的是?(A B C D)
A. lottie.play()
B. lottie.pause()
C. lottie.stop()
D. lottie.goToAndPlay()
【習題】HarmonyOS云開發
判斷題
1.HarmonyOS云開發可以在一個項目中同時實現端側和云側功能的開發。(正確)
2.進行端云一體開發時,開發者需要精通前端、后端不同的開發語言。(錯誤)
單選題
1.開發者在DevEco Studio中,可以通過什么形式進行HarmonyOS云開發?(B)
A. IDE插件
B. 工程模板
C. 命令行工具
D. 可視化工具
2.HarmonyOS云開發當前支持最低API版本是多少?(D)
A. API 6
B. API 7
C. API 8
D. API 9
多選題
1.HarmonyOS云開發工程結構分哪些部分?(A B C)
A. 端開發工程(Application)
B. 云開發工程(CloudProgram)
C. 端側公共庫(External Libraries)
D. 公共資源庫(Resource)
2.HarmonyOS云開發工程創建后,會自動開通哪些服務?(A B C D)
A. 云函數
B. 云數據庫
C. 云存儲
D. 認證服務