commit | 77beed6007208e42009a789eab55df13f9069e0b | [log] [tgz] |
---|---|---|
author | Xin Li <delphij@google.com> | Sun Mar 09 00:10:05 2025 |
committer | Xin Li <delphij@google.com> | Sun Mar 09 00:10:05 2025 |
tree | 2f97e24aa49318c016cb3a8b530cea80d160e669 | |
parent | d5cc2ba3e8fb6577c725d45279f17bb3bf0447fb [diff] | |
parent | c15e59ba0789a0850ed3c90b28d730419b6f2486 [diff] |
Merge 25Q1 (ab/BP1A.250305.020) to AOSP main Bug: 385190204 Merged-In: If22ba92978ec7e408a4c494421cec1ac2df4e03c Change-Id: Ie9ee25cc7769222deba27ed993933d11cabf86b5
This project contains the AOSP reference implementation of the Context Hub Runtime Environment (CHRE), which is Android’s platform for developing always-on applications, called nanoapps. CHRE runs in a vendor-specific processor that is independent of the main applications processor that runs Android. This enables CHRE and its nanoapps to be more power-efficient for use cases that require frequent background processing of contextual data, like sensor inputs. Nanoapps are written to the CHRE API, which is standardized across all platforms, enabling them to be code-compatible across different devices.
The CHRE reference implementation (“CHRE framework”) is designed to be portable across hardware and software platforms. While Android does not require a particular implementation (only compliance to the contracts given in the CHRE API) using the reference implementation helps to reduce the work needed to support CHRE, while also ensuring more consistent behavior for scenarios that can be difficult to enforce via testing.
Use the navigation bar at the top and/or the links below to move through the documentation. Raw files can also be found in the /doc
folder.
The CHRE API and PAL API are also extensively documented using Doxygen syntax. Run doxygen
in the same folder as Doxyfile
to generate a browseable HTML version of the documentation.
This repository (system/chre) contains an assortment of code, structured as follows:
apps/
: Public nanoapp source code, including sample nanoapps intended to showcase how to use the CHRE APIs, and test nanoapps used to validate API functionalitybuild/
: Files related to CHRE’s Makefile-based build system, which supports building the CHRE framework and nanoapps using a configurable toolchainchpp/
: Context Hub Peripheral Protocol (CHPP) source code - see the nested README and associated documentation for detailschre_api/
: Contains the official definition of the CHRE API (current and past versions), which all CHRE implementations must adhere tocore/
: Common CHRE framework code, which is applicable to every platform (contrast to platform/
)doc/
: Contains documentation for the CHRE framework and associated topicsexternal/
: Code developed primarily outside of AOSP which (can be) leveraged by CHRE, and is potentially customized for CHRE (e.g. flatbuffers)host/
: Reference code which supports the CHRE implementation, but runs on the applications processor (“host”), for example the Context Hub HALjava/
: Java test code used in conjunction with test nanoappspal/
: The binary-stable Platform Abstraction Layer (PAL) C API definitions and tests (these PALs may optionally be used by the platform implementation)platform/
: Code related to the implementation of CHRE on a particular platform/device (compare to core/
), divided into sub-folders as follows:platform/include
: The interface between common code in core/
and platform-specific code implemented elsewhere in platform/
platform/shared
: Code that may apply to multiple platforms, but is not necessarily applicable to all platforms (as in core/
). For example, multiple platforms may choose to use the binary-stable PAL interface - this folder contains source files translating from the C++ platform abstractions to the C PAL APIs.platform/<platform_name>
: Code specific to the platform indicated by platform_name
util/
: Utility code that is not platform-specific, but not part of the core framework implementation. Includes code that is usable by nanoapps.variant/
: Code/configuration that is specific to a particular device (more detail on variants can be found below). For example, multiple generations of a given chip may use the same platform code, but the code may be configured on a per-device basis in the build via variant.mk
.Code related to CHRE also exists in other parts of the Android tree, including:
hardware/interfaces/contexthub/
: The Context Hub HAL definitionframeworks/base/core/java/android/hardware/location/ContextHub*.java
: The APIs used by privileged apps to interact with CHRE and nanoappsframeworks/base/services/core/java/com/android/server/location/ContextHub*.java
: The Context Hub service implementation in system serverIf you’re unable to find the answers you’re looking for in CHRE documentation or are looking for specific guidance for your platform, device, or nanoapp, please reach out to the CHRE team via your TAM or through the Google Issue Tracker.
提刑官相当于现在什么官 | 鱼日羽念什么 | 下午5点是什么时辰 | 儿童过敏性结膜炎用什么眼药水 | 装垃圾的工具叫什么 |
富硒是什么意思 | 肝纤维化是什么意思 | kkkk是什么意思 | 吃什么食物对头发好 | 肠炎可以吃什么水果 |
小炒肉用什么肉 | 七夕是什么意思 | 提高免疫力吃什么食物 | gif什么意思 | 什么牌子的奶粉最好 |
五四运动的精神是什么 | 血糖高适合喝什么汤 | 黑死病是什么 | 人几读什么 | 没胃口吃点什么好 |
蓁是什么意思hcv8jop2ns6r.cn | 金为什么克木hcv8jop5ns6r.cn | 右肺上叶结节什么意思hcv8jop5ns3r.cn | 什么是调和油hcv9jop0ns9r.cn | 紫绀是什么症状aiwuzhiyu.com |
五是什么生肖hcv8jop6ns0r.cn | 柴米油盐什么意思beikeqingting.com | 甲状腺手术后有什么后遗症hcv8jop4ns5r.cn | 食物不耐受是什么意思hcv7jop5ns6r.cn | 怀孕感冒可以吃什么药jiuxinfghf.com |
什么茶养胃又治胃病hcv9jop0ns5r.cn | 白头翁吃什么食物hcv8jop5ns6r.cn | 西元前是什么意思xinjiangjialails.com | 为什么16岁不能吃维生素Bhcv7jop6ns8r.cn | 88属什么生肖1949doufunao.com |
鼻炎挂什么科hcv8jop8ns7r.cn | 四十岁月经量少是什么原因hcv7jop9ns4r.cn | 水痘是什么病毒hcv8jop4ns8r.cn | 什么是爱一个人hcv9jop0ns6r.cn | 朗朗原名叫什么hcv8jop4ns6r.cn |