我一直在開發利用GLWallpaperService一個動態壁紙,並已得到了全面良好的效果。它在仿真器中運行穩定,看起來不錯。我之前已經處理過很多次OpenGL,因此對於如何做事情有着堅實的指令......不幸的是,我有一段時間讓這個實際上在實際的硬件上保持穩定。Android動態壁紙:waitForCondition(ReallocateCondition)
基本symption當你進出幾次滑動在摩托羅拉Droid物理鍵盤出現。這會導致壁紙快速連續被破壞/重新創建幾次 - 這很好,因爲我的資產在onDestroy中清理並在onSurfaceChanged中重新加載。問題是經過幾次迭代之後,(可能是四到五次)onSurfaceChanged的調用完全停止,並且我得到了一個打印到日誌的無盡字符串:
04-02 00:53:18.088: WARN/SharedBufferStack(1032):waitForCondition(ReallocateCondition)超時(身份= 337,狀態= 0)。 CPU可能與掛鉤。再試一次。
有什麼我應該在這裏除了對Android系統的典型onSurfaceCreated/onSurfaceChanged/onSurfaceDestroyed三巨頭實現?瀏覽通過WallpaperService和WallpaperRenderer類不會顯示任何明顯的東西。