Единственный способ захвата содержимого SurfaceView - это рендеринг в него с использованием OpenGL.Вы можете использовать glReadPixels (), чтобы получить содержимое поверхности.Если вы рисуете в SurfaceView с помощью Canvas, вы можете просто создать растровое изображение, создать новый Canvas для этого растрового изображения и выполнить код для рисования с новым Canvas.