[Hero, G2 Touch Android Development] GrdLock:
Since the Eris got rooted, we've been working to get live wallpapers working on our phones. Despite all our efforts, we're stuck one one little thing.

Some of the wallpapers, when the phone isn't plugged in, and it sleeps (either manually or by itself), the wallpapers crash and revert back to a static wallpaper.

Examples of some that do it are Nexus, Grass, and Water. Others, such as Polar or Duck Hunt don't have the issue.

If the phone is plugged into the USB, all the wallpapers work perfectly fine.

Another thing to note, the wallpapers that crash when the phone sleeps, also will crash if run in Launcher2.

Anyways, since ya'll have been messing with this stuff a lot longer than we have, I was hoping maybe one of ya'll has run into a similar issue perhaps, and might be able to offer any advice on something we haven't thought of yet?

Here's a logcat from the error:

V/RenderScript( 561): GL Version OpenGL ES 1.0-CM
V/RenderScript( 561): GL Vendor QUALCOMM, Inc.
V/RenderScript( 561): GL Renderer Q3Dimension MSM7500 01.02.08 0 4.0.0
E/RenderScript( 561): Error, OpenGL ES Lite not supported
D/gralloc ( 86): allocating GPU size=307200, offset=307200
D/gralloc ( 86): allocating GPU size=307200, offset=614400
D/gralloc ( 86): allocating GPU size=307200, offset=921600
D/gralloc ( 86): freeing GPU buffer at 0
D/gralloc ( 86): freeing GPU buffer at 307200
D/MountListener( 86): handleEvent ums_disabled:/sdcard
D/MountListener( 86): handleEvent ums_disconnected
D/JOGBALL ( 86): Jogball, + set_jogball_mode mode=0
I/global ( 86): Default buffer size used in BufferedReader constructor. It would be better to be explicit if an 8k-char buffer is required.
W/Process ( 86): Unable to open /proc/460/status
I/global ( 86): Default buffer size used in BufferedReader constructor. It would be better to be explicit if an 8k-char buffer is required.
I/global ( 86): Default buffer size used in BufferedReader constructor. It would be better to be explicit if an 8k-char buffer is required.
D/BatteryService( 86): isUsbConnected() = false
D/BatteryService( 86): mPlugType = 0
I/global ( 86): Default buffer size used in BufferedReader constructor. It would be better to be explicit if an 8k-char buffer is required.
I/global ( 86): Default buffer size used in BufferedReader constructor. It would be better to be explicit if an 8k-char buffer is required.
D/BatteryService( 86): isUsbConnected() = false
D/BatteryService( 86): mPlugType = 0
I/global ( 86): Default buffer size used in BufferedReader constructor. It would be better to be explicit if an 8k-char buffer is required.
I/global ( 86): Default buffer size used in BufferedReader constructor. It would be better to be explicit if an 8k-char buffer is required.
D/BatteryService( 86): isUsbConnected() = false
D/BatteryService( 86): mPlugType = 0
D/UsbConnectedReceiver( 234): action = psclient.intent.action.usb_status
D/UsbConnectedReceiver( 234): ACTION_BATTERY_CHANGED
D/UsbConnectedReceiver( 234): usbCurrentType = 0
D/UsbConnectedReceiver( 234): send battery change plugged = 0
D/UsbConnectedReceiver( 234): action = psclient.intent.action.usb_status
D/UsbConnectedReceiver( 234): ACTION_BATTERY_CHANGED
D/UsbConnectedReceiver( 234): usbCurrentType = 0
D/UsbConnectedReceiver( 234): Current type is same as previous, return!
D/UsbConnectedReceiver( 234): action = psclient.intent.action.usb_status
D/UsbConnectedReceiver( 234): ACTION_BATTERY_CHANGED
D/UsbConnectedReceiver( 234): usbCurrentType = 0
D/UsbConnectedReceiver( 234): Current type is same as previous, return!
D/UsbConnectedReceiver( 234): USB Disconnected.
D/WindowManager( 86): I'm tired mEndcallBehavior=0x2
I/power ( 86): *** set_screen_state 0
D/Sensors ( 86): using /dev/input/event6 (name=lightsensor-level)
D/Sensors ( 86): using /dev/input/event5 (name=compass)
D/Sensors ( 86): using /dev/input/event4 (name=proximity)
D/KeyguardViewManager( 86): show()
D/SurfaceFlinger( 86): About to give-up screen, flinger = 0x140810
D/LockExchangeUtils( 86): isLockExchangeEnabled = false
D/LockExchangeUtils( 86): isLockExchangeEnabled = false
D/BluetoothA2dpService( 86): Received intent with action: android.intent.action.SCREEN_OFF
D/KeyguardViewMediator( 86): handleKeyguardDoneDrawing: notifying mWaitingUntilKeyguardVisible
I/global ( 234): Default buffer size used in BufferedReader constructor. It would be better to be explicit if an 8k-char buffer is required.
D/ContactWidget Matrix( 145): Received intent:android.intent.action.SCREEN_OFF
D/UsbConnectedReceiver( 234): usb_cable_connect = 0
D/dalvikvm( 86): GC freed 17956 objects / 1147296 bytes in 561ms
D/UsbConnectedReceiver( 234): Catch USB Disconnect Event, USB cable does really not exist.
D/JOGBALL ( 86): Jogball, + set_jogball_mode mode=0
D/UsbConnectedReceiver( 234): ADB Enable = true
D/UsbConnectedReceiver( 234): ADB StartByMe = false
D/UsbConnectedReceiver( 234): Try to stop PSService.
I/WindowManager( 86): WIN DEATH: Window{44b76020 com.android.wallpaper.nexus.NexusWallpaper paused=false}
I/ActivityManager( 86): Process com.android.wallpaper (pid 561) has died.
W/WallpaperService( 86): Wallpaper service gone: ComponentInfo{com.android.wallpaper/com.android.wallpaper.nexus.NexusWallpaper}
W/WallpaperService( 86): Reverting to built-in wallpaper!
W/ActivityManager( 86): Scheduling restart of crashed service com.android.wallpaper/.nexus.NexusWallpaper in 20000ms