-
>
全國計算機等級考試最新真考題庫模擬考場及詳解·二級MSOffice高級應用
-
>
決戰行測5000題(言語理解與表達)
-
>
軟件性能測試.分析與調優實踐之路
-
>
第一行代碼Android
-
>
JAVA持續交付
-
>
EXCEL最強教科書(完全版)(全彩印刷)
-
>
深度學習
Hello HarmonyOS!——鴻蒙應用開發從入門到精通 版權信息
- ISBN:9787121428685
- 條形碼:9787121428685 ; 978-7-121-42868-5
- 裝幀:一般輕型紙
- 冊數:暫無
- 重量:暫無
- 所屬分類:>
Hello HarmonyOS!——鴻蒙應用開發從入門到精通 本書特色
適讀人群 :本書適合移動終端應用設計、開發工程師,以及對鴻蒙應用開發感興趣或準備從事相關行業的開發者及院校師生閱讀參考。1.本書內容豐富,針對HarmonyOS 2.0,全面地介紹了鴻蒙2.0應用開發所涉及的知識點,使用概念介紹、代碼編寫、代碼講解的模式,將所講的內容通過小案例用由淺入深、分步拆解的方式進行介紹,可以給你更好的學習體驗。 2.作者權威,作者是華為認證的HarmonyOS系統課程開發者、華為開發者專家
Hello HarmonyOS!——鴻蒙應用開發從入門到精通 內容簡介
本書是系統地介紹鴻蒙應用開發知識的圖書,較全面地介紹了鴻蒙應用開發所涉及的知識點,使用概念介紹、代碼編寫、代碼講解的模式,將所講的內容通過小案例用由淺入深、分步拆解的方式進行介紹,希望為你帶來更好的學習體驗。 本書共分為9章。第1章介紹了HarmonyOS的特性、基礎知識及鴻蒙應用如何在單機和多設備上運行與調試。第2章和第8章介紹了鴻蒙應用的布局與組件。第3章~第7章介紹了鴻蒙應用開發的各項知識,包括Ability、分布式通信、數據管理、公共事件和通知、服務卡片。第9章介紹了鴻蒙應用開發過程中的線程管理。
Hello HarmonyOS!——鴻蒙應用開發從入門到精通 目錄
第1章 HarmonyOS開篇 | 1
1.1 HarmonyOS概述 | 1
1.1.1 HarmonyOS技術特性 | 2
1.1.2 HarmonyOS架構 | 5
1.2 HarmonyOS環境搭建 | 7
1.2.1 DevEco Studio安裝 | 7
1.2.2 SDK安裝 | 10
1.2.3 HDC工具配置 | 17
1.2.4 賬號注冊與實名認證 | 21
1.3 HarmonyOS應用程序知識 | 25
1.3.1 App與HAP | 25
1.3.2 Ability概述 | 27
1.4 **個程序:Hello World! | 27
1.4.1 創建項目 | 28
1.4.2 項目目錄 | 31
1.4.3 配置文件 | 34
1.4.4 模擬器運行 | 36
1.4.5 應用簽名與真機運行 | 45
1.4.6 自動簽名 | 56
1.4.7 應用程序的斷點調試 | 58
1.4.8 HiLog日志 | 63
1.5 本章小結 | 68
第2章 HarmonyOS頁面開發 | 69
2.1 組件與組件容器 | 69
2.1.1 Component | 69
2.1.2 ComponentContainer | 70
2.1.3 開發用戶頁面的方式 | 71
2.1.4 邊距 | 72
2.2 常用布局 | 76
2.2.1 DirectionalLayout | 76
2.2.2 DependentLayout | 89
2.2.3 StackLayout | 95
2.2.4 TableLayout | 98
2.2.5 PositionLayout | 105
2.2.6 AdaptiveBoxLayout | 106
2.3 常用組件 | 109
2.3.1 Component | 109
2.3.2 Text和TextField | 112
2.3.3 Button | 118
2.3.4 RadioButton和RadioContainer | 121
2.3.5 Checkbox | 129
2.3.6 Image | 131
2.3.7 ProgressBar和RoundProgressBar | 135
2.3.8 ToastDialog | 140
2.4 常用的資源類型 | 143
2.4.1 資源目錄 | 143
2.4.2 資源文件的使用 | 144
2.4.3 限定詞目錄 | 153
2.4.4 樣式與樣式選擇 | 155
2.5 動畫開發 | 160
2.5.1 幀動畫 | 160
2.5.2 數值動畫 | 163
2.5.3 屬性動畫 | 168
2.6 組件的事件監聽 | 171
2.6.1 事件類別 | 171
2.6.2 事件監聽的五種寫法 | 174
2.7 本章小結 | 180
第3章 Ability開發 | 181
3.1 Ability概述 | 181
3.2 Page Ability | 182
3.2.1 Page Ability的創建 | 183
3.2.2 Page Ability的生命周期 | 188
3.2.3 Page Ability的導航 | 191
3.3 Service Ability | 203
3.3.1 Service Ability的創建 | 203
3.3.2 Service Ability的生命周期 | 206
3.4 Ability屬性配置 | 215
3.4.1 Ability的配置文件 | 215
3.4.2 Ability的啟動模式 | 218
3.5 Intent | 220
3.5.1 Intent對象的結構 | 220
3.5.2 Intent對象的操作 | 221
3.6 本章小結 | 222
第4章 分布式通信 | 224
4.1 遠程啟動FA | 224
4.1.1 獲取遠程設備的信息 | 225
4.1.2 啟動FA | 231
4.2 應用遷移 | 236
4.2.1 IAbilityContinuation接口 | 236
4.2.2 應用遷移案例 | 239
4.2.3 IAbilityContinuation接口的其他回調方法 | 243
4.3 應用回遷 | 246
4.4 跨設備啟動服務 | 248
4.5 跨設備連接服務 | 252
4.6 跨設備服務調用 | 256
4.7 本章小結 | 264
第5章 數據管理 | 265
5.1 本地數據管理 | 265
5.1.1 關系型數據庫與SQLite | 265
5.1.2 關系型數據庫的操作 | 268
5.1.3 對象關系映射數據庫 | 282
5.1.4 Preferences | 298
5.2 分布式數據管理 | 309
5.2.1 分布式數據服務 | 309
5.2.2 分布式數據服務開發 | 311
5.3 分布式文件服務 | 325
5.3.1 分布式文件服務概述 | 325
5.3.2 分布式文件服務開發 | 326
5.4 Data Ability | 333
5.4.1 Data Ability概述 | 333
5.4.2 Data Ability的創建 | 334
5.4.3 Data Ability的文件訪問 | 338
5.4.4 Data Ability的數據庫訪問 | 345
5.5 本章小節 | 355
第6章 公共事件和通知 | 356
6.1 公共事件 | 357
6.1.1 公共事件發布 | 357
6.1.2 事件訂閱 | 364
6.1.3 公共事件退訂 | 369
6.2 通知 | 370
6.3 IntentAgent | 382
6.3.1 IntentAgent概述 | 382
6.3.2 IntentAgent開發 | 383
6.4 本章小結 | 390
第7章 服務卡片與原子化服務 | 391
7.1 卡片 | 391
7.1.1 創建卡片 | 394
7.1.2 卡片的開發 | 400
7.2 原子化服務 | 417
7.2.1 原子化服務概述 | 417
7.2.2 原子化服務開發 | 418
7.3 本章小結 | 422
第8章 高級編程 | 423
8.1 ListContainer | 423
8.1.1 ListContainer的使用 | 423
8.1.2 ListContainer的事件方法 | 430
8.2 ScrollView | 432
8.2.1 ScrollView的使用 | 432
8.2.2 ScrollView的事件方法 | 436
8.3 PageSlider與PageSliderIndicator | 439
8.3.1 PageSlider的使用 | 439
8.3.2 PageSlider的方法 | 445
8.3.3 PageSliderIndicator的使用 | 448
8.3.4 PageSliderIndicator的事件方法 | 454
8.4 WebView | 456
8.4.1 WebView的使用 | 456
8.4.2 WebView的事件方法 | 458
8.5 Fraction | 471
8.5.1 Fraction概述 | 471
8.5.2 Fraction的使用 | 473
8.6 本章小結 | 482
第9章 線程管理 | 483
9.1 線程管理開發 | 483
9.1.1 線程優先級 | 484
9.1.2 TaskDispatcher開發 | 484
9.2 線程間通信 | 497
9.2.1 EventHandler運行機制 | 498
9.2.2 線程間通信相關的對象 | 499
9.2.3 線程間通信開發 | 502
9.3 本章小結 | 510
Hello HarmonyOS!——鴻蒙應用開發從入門到精通 節選
4.4 跨設備啟動服務 在HarmonyOS中,所有的功能都被抽象成Ability,服務被稱作Service Ability,它不包含與用戶進行交互的頁面。比如,音樂播放器可以在退回到桌面后,依然播放音樂,這其實就是一種沒有頁面的服務。依托于HarmonyOS的分布式通信能力,開發者可以完成跨設備的服務啟動,以便控制其他設備上的服務。首先來看一種*簡單的使用方式:跨設備啟動Service Ability。 跨設備啟動服務和跨設備啟動應用其實非常類似,需要申請ohos.permission.DISTRIBUTED_DATASYNC權限。當然,如果你需要查詢網絡中的分布式設備信息,那么還需要ohos.permission.GET_DISTRIBUTED_ DEVICE_INFO權限。 接下來完成一個跨設備啟動Service Ability的案例。要完成這個案例,就需要以下幾個步驟。 圖4-14 創建SimpleServiceAbility (1)權限配置。同4.2.2節的權限配置。 (2)通過DevEco Studio創建Service Ability,命名為SimpleServiceAbility,如圖4-14所示。 (3)在ability_main.xml布局文件中新增一個按鈕。 ...... (4)在MainAbilitySlice中定義它的點擊事件。 Button startService = (Button)findComponentById(ResourceTable.Id_ start_service); startService.setClickedListener(new Component.ClickedListener() { @Override public void onClick(Component component) { Intent intent = new Intent(); //配置Intent參數 Operation operation = new Intent.OperationBuilder() .withDeviceId(deviceList.get(0).getDeviceId()) .withBundleName(getBundleName()) .withAbilityName(SimpleServiceAbility.class.getName()) .withFlags(Intent.FLAG_ABILITYSLICE_MULTI_DEVICE).build(); intent.setOperation(operation); intent.setParam("data","這是遠程服務傳來的消息!"); startAbility(intent); } }); 這里的代碼其實與遠程啟動FA是一樣的,并沒有區別。在上述代碼中使用了deviceList.get(0).getDeviceId()方法獲取設備ID,deviceList通過以下方式來獲取。 List deviceList = DeviceManager.getDeviceList (DeviceInfo.FLAG_GET_ONLINE_DEVICE); 由于Service Ability是沒有頁面的,為了方便看到效果,在Intent對象中傳遞了一個字符串。當啟動遠程服務后,開發者可以獲取這個字符串,并給出提示,這樣就能看出啟動遠程服務的效果。具體操作是在SimpleServicAbility的onCommand()方法中獲取這個字符串,使用ToastDialog組件給出提示。 Ability為開發者提供了startAbility()方法來啟動另一個Ability。由于不管是Feature Ability,還是Service Ability,都屬于Ability的一種,所以也可以使用startAbility()方法來啟動一個Service Ability。如果遠程啟動設備的Ability,那么只需要通過Operation對象的withDeviceId()方法來指定要啟動的是哪一臺設備上的Service Ability即可。 (5)重寫SimpleServiceAbilty中的onCommand()方法。獲取傳遞過來的字符串,并進行提示。 @Override protected void onCommand(Intent intent, boolean restart, int startId) { super.onCommand(intent, restart, startId); String sdata = intent.getStringParam("data"); new ToastDialog(ctx).setText(sdata).show(); } 到這里,所有的代碼都準備完成了,接下來將程序運行到模擬器上觀察效果。首先獲取分布式設備的信息,然后點擊“啟動遠程服務”按鈕,可以看到右側設備已經彈出了消息提示,說明啟動遠程服務成功,如圖4-15所示。 (a) (b) 圖4-15 啟動遠程服務 這個時候,將右側設備返回到桌面(將程序切換到后臺),再次點擊“啟動遠程服務”按鈕,也是可以接收到消息的,如圖4-16所示。 圖4-16 后臺運行的服務 這就是啟動遠程服務的例子,接下來介紹連接服務。它可以讓多個設備之間建立一條通路,通過這條通路,可以實現以低延時在不同設備間進行數據交換。
Hello HarmonyOS!——鴻蒙應用開發從入門到精通 作者簡介
孫洋,華為開發者專家(HDE),華為認證的HarmonyOS系統課程開發者,華為開發者學堂認證講師,51CTO HarmonyOS技術社區MVP,CSDN博客專家,中國農業銀行總行前研發工程師
- >
推拿
- >
煙與鏡
- >
新文學天穹兩巨星--魯迅與胡適/紅燭學術叢書(紅燭學術叢書)
- >
我從未如此眷戀人間
- >
李白與唐代文化
- >
隨園食單
- >
大紅狗在馬戲團-大紅狗克里弗-助人
- >
伊索寓言-世界文學名著典藏-全譯本