onSurfaceChanged是在surface发生改变时调用,测试遇到如:preview,setwallpaper,以及横竖屏切换
onVisibilityChanged则是当壁纸可视与否发生变化时调用,所以只要onSurfaceChanged发生,则onVisibilityChanged一定会发生,再如home界面被遮挡或者重新返回home界面都会调用
onOffsetsChanged 则是壁纸当前显示页相当于原点坐标发生位移的时候会调用,如左右划屏时就会调用,当然只要onSurfaceChanged发生,则onOffsetsChanged 也一定会被调用。
以上都是测试以及推论,未详加考察。