code: private void drawCompatShadow(Canvas canvas) {
  
          // Draw the fake shadow for each of the corners and edges.
          for (int index = 0; index < 4; index++) {
              cornerShadowOperation[index].draw(shadowRenderer, drawableState.shadowCompatRadius, canvas);
              edgeShadowOperation[index].draw(shadowRenderer, drawableState.shadowCompatRadius, canvas);
          }
      }
docs: Draws a shadow using gradients which can be used in the cases where native elevation can't.
  This draws the shadow in multiple parts. It draws the shadow for each corner and edge
  separately. Then it fills in the center space with the main shadow colored paint. If there is
  no shadow offset, this will skip the drawing of the center filled shadow since that will be
  completely covered by the shape.