android动态壁纸服务类继承WallpaperService,主要是靠其内部方法onCreateEngine()方法返回的Engine来实现动态显示!所以写个内部类,将所有操作都放到Engine类中处理,WallpaperService无需其他操作(如果将一些初始化的东西放到WallpaperService里的话可能出现的情况就是:1、设置壁纸之后再一次设置同一个壁纸,壁纸不会再动;2、预览转屏时点击“设置”将出现壁纸完全混乱)。
在这里主要就是按照一个壁纸可能的流程,打印了一些方法,看看某个阶段会调用什么样的方法,这样可以在特定的阶段初始不同的值,以及创建和销毁对象:
1、MyWallpaperSevice onCreate
MyWallpaperSevice onCreateEngine
MyEngine MyEngine()
MyEngine onCreate
MyEngine onSurfaceCreated
MyEngine onSurfaceChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onOffsetsChanged
MyEngine onTouchEvent
MyEngine onTouchEvent
MyWallpaperSevice onCreateEngine
MyEngine MyEngine()
MyEngine onCreate
MyEngine onSurfaceCreated
MyEngine onSurfaceChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onOffsetsChanged
MyEngine onVisibilityChanged
MyEngine onSurfaceDestroyed
MyEngine onDestroy
2、 MyWallpaperSevice onCreate
MyWallpaperSevice onCreateEngine
MyEngine MyEngine()
MyEngine onCreate
MyEngine onSurfaceCreated
MyEngine onSurfaceChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onOffsetsChanged
MyEngine onVisibilityChanged
MyEngine onSurfaceDestroyed
MyEngine onDestroy
MyWallpaperSevice onDestroy
3、 MyWallpaperSevice onCreate
MyWallpaperSevice onCreateEngine
MyEngine MyEngine()
MyEngine onCreate
MyEngine onSurfaceCreated
MyEngine onSurfaceChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onOffsetsChanged
MyWallpaperSevice onConfigurationChanged
MyEngine onVisibilityChanged
MyEngine onSurfaceDestroyed
MyEngine onDestroy
MyWallpaperSevice onDestroy
MyWallpaperSevice onCreate
MyWallpaperSevice onCreateEngine
MyEngine MyEngine()
MyEngine onCreate
MyEngine onSurfaceCreated
MyEngine onSurfaceChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onOffsetsChanged
MyEngine onVisibilityChanged
MyEngine onSurfaceDestroyed
MyEngine onDestroy
MyWallpaperSevice onDestroy
4、 MyWallpaperSevice onCreate
MyWallpaperSevice onCreateEngine
MyEngine MyEngine()
MyEngine onCreate
MyEngine onSurfaceCreated
MyEngine onSurfaceChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onOffsetsChanged
MyWallpaperSevice onConfigurationChanged
MyEngine onVisibilityChanged
MyEngine onSurfaceDestroyed
MyEngine onDestroy
MyWallpaperSevice onDestroy
MyWallpaperSevice onCreate
MyWallpaperSevice onCreateEngine
MyEngine MyEngine()
MyEngine onCreate
MyEngine onSurfaceCreated
MyEngine onSurfaceChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onOffsetsChanged
MyEngine onTouchEvent
MyEngine onTouchEvent
MyWallpaperSevice onCreateEngine
MyEngine MyEngine()
MyEngine onCreate
MyEngine onSurfaceCreated
MyEngine onSurfaceChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyWallpaperSevice onConfigurationChanged
MyEngine onOffsetsChanged
MyEngine onVisibilityChanged
MyEngine onSurfaceChanged
MyEngine onOffsetsChanged
MyEngine onSurfaceDestroyed
MyEngine onDestroy
5、 MyWallpaperSevice onCreate
MyWallpaperSevice onCreateEngine
MyEngine MyEngine()
MyEngine onCreate
MyEngine onSurfaceCreated
MyEngine onSurfaceChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onOffsetsChanged
MyWallpaperSevice onConfigurationChanged
MyEngine onVisibilityChanged
MyEngine onSurfaceDestroyed
MyEngine onDestroy
MyWallpaperSevice onDestroy
MyWallpaperSevice onCreate
MyWallpaperSevice onCreateEngine
MyEngine MyEngine()
MyEngine onCreate
MyEngine onSurfaceCreated
MyEngine onSurfaceChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onOffsetsChanged
MyWallpaperSevice onConfigurationChanged
MyEngine onVisibilityChanged
MyEngine onSurfaceDestroyed
MyEngine onDestroy
MyWallpaperSevice onDestroy
MyWallpaperSevice onCreate
MyWallpaperSevice onCreateEngine
MyEngine MyEngine()
MyEngine onCreate
MyEngine onSurfaceCreated
MyEngine onSurfaceChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onOffsetsChanged
MyEngine onTouchEvent
MyEngine onTouchEvent
MyWallpaperSevice onCreateEngine
MyEngine MyEngine()
MyEngine onCreate
MyEngine onSurfaceCreated
MyEngine onSurfaceChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onOffsetsChanged
MyEngine onVisibilityChanged
MyEngine onSurfaceDestroyed
MyEngine onDestroy
6、 MyEngine onVisibilityChanged
MyWallpaperSevice onCreateEngine
MyEngine MyEngine()
MyEngine onCreate
MyEngine onSurfaceCreated
MyEngine onSurfaceChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onVisibilityChanged
MyEngine onOffsetsChanged
MyEngine onTouchEvent
MyEngine onTouchEvent
MyEngine onVisibilityChanged
MyEngine onOffsetsChanged
MyEngine onVisibilityChanged
MyEngine onSurfaceDestroyed
MyEngine onDestroy
7、 MyEngine onVisibilityChanged
MyEngine onSurfaceDestroyed
MyEngine onDestroy
MyWallpaperSevice onDestroy