소비 전력 ...
1) 가장 중요한 것은, 멀리 보이는 것이 보이지 않을 때 벽지가 꺼져 있어야한다는 것입니다. 큐브 예제는 onDestroy(), onSurfaceDestroyed() 및 onVisibilityChanged()에서 visible (= false) 일 때 runnable 콜백을 제거하여 올바르게 처리합니다.
2) 그 이상인 경우 전력 손실의 가장 큰 결정 요인은 프레임 속도입니다. 24fps 애니메이션은 초당 1 초에 업데이트되는 시계보다 훨씬 많은 주스를 소모합니다. 이 문제를 해결할 방법은 없습니다. 사용자를 교육하는 것 외에는 기대가 합리적이지 않습니다. 액션 게임은 앱 이건 라이브 배경 화면 이건간에 배터리를 죽입니다.
성능 ...
캔버스에 그리는 작업은 단순함의 이점이 있지만 매우 정교한 배경 화면의 경우 OpenGL을 사용해야합니다. GLWallpaperService와 AndEngine이 있습니다. 재고 배경 화면은 RenderScript를 사용하도록 조정되었습니다 (Android 소스 트리에서이 코드를 찾는 것이 유용 할 수 있습니다 - SDK의 큐브 예제보다 훨씬 정교합니다). 그리고 배경 화면을 다루기 위해 libGDX를 확장하는 것에 대한 이야기가있었습니다.
가장 적합한 ...
글쎄, 그것은 안드로이드의 나머지와 같습니다. 당신은 확장 가능한 비율로 아트 워크를 디자인하고, 장치를 쿼리하고 그에 따라 조정해야합니다. 간단한 배경 화면의 경우 일반적으로 onSurfaceChanged()에서 아트웍의 크기를 조정하는 것으로 충분합니다.이 경우 너비와 높이가 매개 변수로 지정됩니다. 어떤 경우에는 전체 DisplayMetrics를 검사해야 할 수 있습니다.