欧峰手机是一款高性价比的手机,欧峰手机的相关优势介绍具体如下:
1、欧峰手机的配置较高:欧峰手机搭载骁龙888处理器,骁龙888采用5nm工艺制程,相比上代骁龙865处理器,CPU整体性能提升25%,功耗降低25%。欧峰手机的GPU性能提升35%,功耗降低20%。欧峰手机还采用了满血LPDDR5内存,数据传输速率最高能够达到6400Mbps。
2、欧峰手机的摄像功能全面:欧峰手机采用一亿像素主摄,支持OIS光学防抖,搭配1300万像素超广角镜头和500万像素长焦微距镜头。主摄传感器为1/133的HMX,支持像素四合一技术。欧峰手机前置镜头为2000万像素,支持大广角全景合影模式。
扩展资料:
欧峰手机的其他介绍:
欧峰手机配备4600mAh电池,支持55W有线快充、50W无线快充和10W反向充电。值得一提的是,为了响应科技环保号召。欧峰手机还采用X轴线性马达和哈曼卡顿调音双扬声器,支持多功能NFC和红外遥控。
另外,欧峰手机采用681英寸四曲面AMOLED屏幕,分辨率为3200x1440,支持120Hz刷新率和480Hz触控采样率。这块屏幕激发亮度900nit,峰值亮度能够达到1500nit,此外欧峰手机还支持原色屏和10bit色深。
TARGET_PRODUCT 来决定编译定制product
首先, 编译Android 代码 通常情况下使用:
# make showcommands
这实际上等价于下面的完整命令 (具体参见 build/core/envsetupmk )
# TARGET_ARCH=arm TARGET_PRODUCT=generic TARGET_BUILD_TYPE=release make showcommands
可见,默认情况下编译系统认为TARGET_PRODUCT 是generic 的
那如何编译特定产品的Android呢?
这就需要查看Android Makefile是如何解析环境变量TARGET_PRODUCT的。
Android Makefile 的引用关系是这样的
Makefile -> build/core/mainmk -> build/core/configmk -> build/core/envsetupmk -> build/core/product_configmk
在build/core/product_configmk 中编译系统首先调用 build/core/productmk中定义的函数get-all-product-makefiles ,来
遍历整个vendor 的子目录, 找到vendor下所有的 AndroidProductsmk, 不同子目录下的AndroidProductsmk 中定义了不同的 PRODUCT_NAME, PRODUCT_DEVICE 等信息,(我们也可以通过 打开build/core/product_configmk 中的#$(dump-products) 语句使控制台编译的时候输出所有product 的信息) , 接着build/core/product_configmk 会调用resolve-short-product-name 将TARGET_PRODUCT匹配的AndroidProductsmk 中定义的 PRODUCT_DEVICE 赋值给TARGET_DEVICE。
有了这个TARGET_DEVICE, 再回到 build/core/configmk,
会include $(TARGET_DEVCIE)/BoardConfigmk
board_config_mk := /
$(strip $(wildcard /
$(SRC_TARGET_DIR)/board/$(TARGET_DEVICE)/BoardConfigmk /
vendor//$(TARGET_DEVICE)/BoardConfigmk /
))
include $(board_config_mk)
而这个配置文件BoardConfigmk 决定了目标系统编译属性,比如使用ALSA还是不是 GENERIC_AUDIO 等等
另外在这里TARGET_DEVICE 宏也决定了TARGET_DEVICE_DIR, 因为TARGET_DEVICE_DIR 取的是上面提到的BoardConfigmk 的路径。
TARGET_DEVICE_DIR := $(patsubst %/,%,$(dir $(board_config_mk)))
当然Android 的Ob目标输出也是由TARGET_DEVICE决定,见build/core/envsetupmk
TARGET_OUT_ROOT_release := $(OUT_DIR)/target
TARGET_OUT_ROOT_debug := $(DEBUG_OUT_DIR)/target
TARGET_OUT_ROOT := $(TARGET_OUT_ROOT_$(TARGET_BUILD_TYPE))
TARGET_PRODUCT_OUT_ROOT := $(TARGET_OUT_ROOT)/product
PRODUCT_OUT := $(TARGET_PRODUCT_OUT_ROOT)/$(TARGET_DEVICE)
再回到 build/core/mainmk, 编译系统接着做的一个件事情是,遍历所有字目录,找到所有Androidmk文件,并将这些Androidmk文件include 进来
#
# Typical build; include any Androidmk files we can find
#
subdir_makefiles := /
$(shell build/tools/findleavespy --prune=out --prune=repo --prune=git $(subdirs) Androidmk)
include $(subdir_makefiles)
我们再来看其中的
/build/target/board/Androidmk
,对了它引用了
include $(TARGET_DEVICE_DIR)/AndroidBoardmk
由上面TARGET_DEVICE_DIR的定义,这下又进入了
vendor 下TARGET_DEVICE指向的目录了,这个mk文件中定义了特定Product需要编译和安装app 和 script
欢迎分享,转载请注明来源:品搜搜测评网