偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Context上下文--到底是什么?

系統(tǒng) OpenHarmony
這篇文章就來簡單聊聊"Context上下文"到底是什么?

什么是Context上下文

在我剛開始看到Context上下文的時候覺得比較抽象,只知道它是用來拉起權(quán)限或者獲取應用的一些信息,但是卻一直不知道它到底是什么,設計者是怎么定義的?這篇文章就來簡單聊聊"Context上下文"到底是什么?
我們先從表層上看,Context翻譯過來字面意思就是上下文,從初高中學語文的知識來看,意思就是文章的語境,背景和環(huán)境等等跟文章相聯(lián)系的內(nèi)容。

但是我們將其代入到程序中,其實也可以從語文的角度也可以解釋得通,就是抽象化了一下,Context這個字段在程序中通俗的講就是指執(zhí)行一個任務所需要的相關(guān)信息,這個任務可以是一個進程,一個線程。而在OpenHarmony和HarmonyOS北向開發(fā)中分別為ability與application提供了Context上下文的能力,包括訪問ability或application的任務資源、請求和驗證權(quán)限等。

在HarmonyOS&OpenHarmony中的Context應用上下文概述

Context是應用中對象的上下文,提供獲取應用程序環(huán)境信息的能力。

OpenHarmony的應用框架分為FA模型和Stage兩種模型。對應存在兩套Context機制適配兩種應用框架模型,其中application/BaseContext屬于通用的Context基類,里面包含一個屬性stageMode,用來區(qū)分開發(fā)模型是FA還是Stage。

Context會在后續(xù)開發(fā)獲取系統(tǒng)信息能力的過程中經(jīng)常遇到,所以必須對Context上下文含義以及如何使用有一定的了解。

下面來簡單用代碼實現(xiàn)幾個例子,工程創(chuàng)建參考上一章節(jié)即可。

代碼實操

接下來先用Context上下文獲取有關(guān)當前應用程序的信息

import featureAbility from '@ohos.ability.featureAbility'
import bundle from '@ohos.bundle'
onInit(){
let context = featureAbility.getContext();//創(chuàng)建Context實例對象
context.getApplicationInfo().then((data) => {
console.info("CHW=====================>getApplicationInfoCallback===================>");
console.info("CHW====>data====>" + JSON.stringify(data))
});
}

將代碼編譯成HAP包然后安裝到開發(fā)板或者手機上,就可以將調(diào)試臺切換到log窗口,查看輸出的調(diào)試信息,可以看到第三行輸出的就是我們要有關(guān)當前應用程序的信息。

#打卡不停更#【FFH】"Context上下文"到底是什么?-開源基礎軟件社區(qū)

獲取當前ability的包名:

import featureAbility from '@ohos.ability.featureAbility'
import bundle from '@ohos.bundle'
onInit(){
let context = featureAbility.getContext();//創(chuàng)建Context實例對象
context.getBundleName().then((data) => {
console.info("CHW=======================>getBundleNameCallback====================>");
console.info("CHW====>data====>" + JSON.stringify(data));
});
}

#打卡不停更#【FFH】"Context上下文"到底是什么?-開源基礎軟件社區(qū)

粗體獲取此ability的當前顯示方向:

import featureAbility from '@ohos.ability.featureAbility'
onInit(){
let context = featureAbility.getContext();//創(chuàng)建Context實例對象
context.getDisplayOrientation().then((data) => {
console.info("CHW=======================>getDisplayOrientatinotallow====================>");
console.info("CHW====>data====>" + JSON.stringify(data));
});
}

#打卡不停更#【FFH】"Context上下文"到底是什么?-開源基礎軟件社區(qū)

改變此ability的當前顯示方向為橫屏顯示:

#打卡不停更#【FFH】"Context上下文"到底是什么?-開源基礎軟件社區(qū)

import featureAbility from '@ohos.ability.featureAbility'
import bundle from '@ohos.bundle' //導入Bundle模塊以獲取屏幕顯示方向DisplayOrientation對象
onInit(){
let context = featureAbility.getContext();//創(chuàng)建Context實例對象
let orientatinotallow=bundle.DisplayOrientation.LANDSCAPE;//設置方向參數(shù)為橫屏
context.setDisplayOrientation(orientation).then((data) => {
console.info("CHW=======================>setDisplayOrientatinotallow====================>");
console.info("CHW====>data====>" + JSON.stringify(data));
});
}

#打卡不停更#【FFH】"Context上下文"到底是什么?-開源基礎軟件社區(qū)

??想了解更多關(guān)于開源的內(nèi)容,請訪問:??

??51CTO 開源基礎軟件社區(qū)??

??https://ost.51cto.com??。

責任編輯:jianghua 來源: 51CTO開源基礎軟件社區(qū)
相關(guān)推薦

2017-05-11 14:00:02

Flask請求上下文應用上下文

2025-03-18 08:14:05

2021-01-26 05:19:56

語言Go Context

2020-10-14 06:22:14

UWB技術(shù)感知

2020-09-27 06:53:57

MavenCDNwrapper

2020-09-22 08:22:28

快充

2010-11-01 01:25:36

Windows NT

2011-04-27 09:30:48

企業(yè)架構(gòu)

2012-12-31 10:01:34

SELinuxSELinux安全

2022-09-14 13:13:51

JavaScript上下文

2022-11-03 08:29:32

編程管理器協(xié)議

2025-02-08 09:13:40

2021-09-01 23:29:37

Golang語言gRPC

2021-01-21 21:24:34

DevOps開發(fā)工具

2021-02-05 10:03:31

區(qū)塊鏈技術(shù)智能

2020-03-05 10:28:19

MySQLMRR磁盤讀

2023-07-12 15:32:49

人工智能AI

2021-07-07 05:07:15

JDKIterator迭代器

2022-10-08 00:00:00

Spring數(shù)據(jù)庫項目

2024-02-04 00:01:00

云原生技術(shù)容器
點贊
收藏

51CTO技術(shù)棧公眾號