diff --git a/graphic/graphic_2d/native_window/external_window.h b/graphic/graphic_2d/native_window/external_window.h
index 045da5cd8f1b2298394598d1d5ad84d1ea42a71c..b4ea87599de77b597d71e451f4975eefe485713f 100644
--- a/graphic/graphic_2d/native_window/external_window.h
+++ b/graphic/graphic_2d/native_window/external_window.h
@@ -872,5 +872,19 @@ int32_t OH_NativeWindow_GetMetadataValue(OHNativeWindow *window, OH_NativeBuffer
}
#endif
+/**
+ * @brief Clean all OHNativeWindowBuffer caches of this OHNativeWindow
+ * This interface is a non-thread-safe type interface.\n
+ *
+ * @syscap SystemCapability.Graphic.Graphic2D.NativeWindow
+ * @param window Indicates the pointer to a OHNativeWindow instance.
+ * @return {@link NATIVE_ERROR_OK} 0 - Success.
+ * {@link NATIVE_ERROR_INVALID_ARGUMENTS} 40001000 - window is NULL.
+ * {@link NATIVE_ERROR_CONSUMER_DISCONNECTED} 41211000 - the consumer is disconnected.
+ * {@link NATIVE_ERROR_BINDER_ERROR} 50401000 - ipc send failed.
+ * @since 16
+ * @version 1.0
+ */
+int32_t OH_NativeWindow_CleanCache(OHNativeWindow *window);
/** @} */
#endif
\ No newline at end of file
diff --git a/graphic/graphic_2d/native_window/libnative_window.ndk.json b/graphic/graphic_2d/native_window/libnative_window.ndk.json
index 375d3e034a2f351b1f9964c6a8fef025a40f359a..40019c4e13786ebf33c2fd61a53015c629581b2d 100644
--- a/graphic/graphic_2d/native_window/libnative_window.ndk.json
+++ b/graphic/graphic_2d/native_window/libnative_window.ndk.json
@@ -50,6 +50,10 @@
{
"first_introduced": "12",
"name": "OH_NativeWindow_GetMetadataValue"
+ },
+ {
+ "first_introduced": "16",
+ "name": "OH_NativeWindow_CleanCache"
}
]
\ No newline at end of file