如何修复'class android::Surface'没有名为"setDirtyRect"的成员?

How to fix 'class android::Surface' has no member named 'setDirtyRect'?

本文关键字:setDirtyRect 成员 Surface class 何修复 android      更新时间:2023-10-16

在构建Android(OmniRom,基于5.1)时,我得到了这个:

target thumb C++: libandroid_runtime <= frameworks/base/core/jni/android_view_InputQueue.cpp
frameworks/base/core/jni/android_view_Surface.cpp: In function 'void android::nativeSetDirtyRect(JNIEnv*, jclass, jlong, jobject)':
frameworks/base/core/jni/android_view_Surface.cpp:211:14: error: 'class android::Surface' has no member named 'setDirtyRect'
     surface->setDirtyRect(&rect);
              ^
target thumb C++: libandroid_runtime <= frameworks/base/core/jni/android_view_KeyEvent.cpp
target thumb C++: libandroid_runtime <= frameworks/base/core/jni/android_view_KeyCharacterMap.cpp
make: *** [/home/ice552/omni/out/target/product/find7op/obj/SHARED_LIBRARIES/libandroid_runtime_intermediates/android_view_Surface.o] Ошибка 1
make: *** Ожидание завершения заданий...

如何解决这个问题?

无法为 CAF 设备构建 5.1。

您还需要将分支 android-5.1-caf 用于 av 和本机存储库

您需要将这两个补丁应用于框架/本机: http://review.cyanogenmod.org/#/c/62472/2 https://gerrit.omnirom.org/#/c/11061/1/

恢复也会抛出错误,因此您需要从 5.0 添加图形。