Android(安卓)P在绘制界面时,默认更换skiagl绘图库绘制界面
16lz
2021-01-26
Android O和Android P在绘制界面时默认使用的是不同的库进行绘制的
-
Android O是通过使用opengl进行绘制
- frameworks/base/libs/hwui/Properties.cpp
RenderPipelineType Properties::getRenderPipelineType() { if (sRenderPipelineType != RenderPipelineType::NotInitialized) { return sRenderPipelineType; } char prop[PROPERTY_VALUE_MAX]; property_get(PROPERTY_RENDERER, prop, "opengl"); if (!strcmp(prop, "skiagl")) { ALOGD("Skia GL Pipeline"); sRenderPipelineType = RenderPipelineType::SkiaGL; } else if (!strcmp(prop, "skiavk")) { ALOGD("Skia Vulkan Pipeline"); sRenderPipelineType = RenderPipelineType::SkiaVulkan; } else { //"opengl" ALOGD("HWUI GL Pipeline"); sRenderPipelineType = RenderPipelineType::OpenGL; } return sRenderPipelineType;}
-
Android P是通过使用skiagl进行绘制
- frameworks/base/libs/hwui/Properties.cpp
RenderPipelineType Properties::getRenderPipelineType() { if (sRenderPipelineType != RenderPipelineType::NotInitialized) { return sRenderPipelineType; } char prop[PROPERTY_VALUE_MAX]; property_get(PROPERTY_RENDERER, prop, "skiagl"); if (!strcmp(prop, "skiagl")) { ALOGD("Skia GL Pipeline"); sRenderPipelineType = RenderPipelineType::SkiaGL; } else if (!strcmp(prop, "skiavk")) { ALOGD("Skia Vulkan Pipeline"); sRenderPipelineType = RenderPipelineType::SkiaVulkan; } else { //"opengl" ALOGD("HWUI GL Pipeline"); sRenderPipelineType = RenderPipelineType::OpenGL; } return sRenderPipelineType;}
-
Android在9.0后的版本中默认使用skiagl替换
更多相关文章
- android canvas 绘制bitmap并保存到本地
- Android调用默认浏览器打开指定Url
- android自定义View-垂直滚动的TextView
- android 限制EditText输入数字的范围大小
- android微信window.location.reload失效
- Android(安卓)升级Android(安卓)X 所需要替换的包(一)
- android的edittext默认不获得焦点
- React Navigation-StackNavigator
- Android麦克风录音带音量大小动态显示的圆形自定义View