Like your space-time continuum disclaimer.
Sent from my iPhone
On Jan 28, 2009, at 7:04 PM, Mark Murphy <mmur...@commonsware.com> wrote:
In response to the "[android-developers] Re: Rendering the G1 screen on
a computer screen via VNC software?" thread, I tossed together a quick
and very dirty DroidEx.
DroidEx provides a window with a constantly-refreshing view of a device
connected to the host computer. You can use this for demonstrating
software that requires a G1/ADP1 instead of an emulator.
To get it, download the 3K JAR file from:
http://groups.google.com/group/cw-android/web/DroidEx.jar
To run it, you need to put it and the ddmslib.jar from your SDK tools/
folder on the classpath and invoke com.commonsware.droidex.DroidEx, such as:
java -cp
DroidEx.jar:/opt/android-sdk-linux_x86-1.0_r2/tools/lib/ddmlib.jar
com.commonsware.droidex.DroidEx
It also requires that the adb daemon be running, such as a development
PC/Mac.
It assumes there is precisely one device plugged in or emulator running.
All it does is open a window showing you the contents of that device's
or emulator's screen. It refreshes ~6 times/second, so it's not the
smoothest thing going, but at that speed it doesn't seem to drag the G1
down very much.
It also suffers from the following:
-- The screen-capture logic in Android proper seems to occasionally miss
updates for some reason. I've seen this with DDMS and hierarchyviewer
too, so I'm assuming it's something in the Android firmware. Hence,
sometimes DroidEx will appear to be a movement behind (e.g., you clicked
up in a list, and DroidEx still shows the previous one as the selected item)
-- Once, adb or the device seemed to reject DroidEx part-way through a
projection session, causing the image to freeze on DroidEx's window and
a bunch of error messages to be logged to stderr. Closing and reopening
DroidEx was sufficient to clear up this condition.
Also, this was compiled against 1.0r2's version of ddmslib.jar, so it
may or may not work with other versions of the SDK.
It is far from perfect, but it may be better than pointing a webcam at a
device for device-based demos. However, as the saying goes, "your
mileage may vary". I disclaim all warranties, will not be responsible if
your use of DroidEx rips a hole in the space-time continuum, etc.
If there's sufficient interest, and I have time, I'll clean up the
extremely ugly code (~100 lines) and post it somewhere.
If you have questions or comments regarding DroidEx, head over to the
CW-Android Google Group, and post 'em there:
http://groups.google.com/group/cw-android
Or, reply to this message.
--
Mark Murphy (a Commons Guy)
http://commonsware.com
_The Busy Coder's Guide to Android Development_ Version 2.0 Published!