The Android 2.2 default browser does not natively support SVG or
XPath. Because of the lack of XPath, SVG Web does not currently work
either. I have hacked in alternative code and verified that if the
missing XPath is replaced, SVG Web works on Android.
SVGWeb uses XPath to implement getElementById(). My quick hack was a
full DOM traversal which is not a real solution. Other solutions are
to keep a hash table, but that is tedious and error prone, although it
might be sufficient. A hash table combined with a full traversal on
failure is another idea.
So, a solution will probably surface at some point and that is good
news. However, I cannot promise the performance of Android/Flash will
be that great. Until a solution for the lookups is implemented it is
hard to say for sure what the performance will be, but based on
various hints, I am not all that excited about what I have seen Flash
do so far on a 1st gen Galaxy Tab.
Android really needs to turn on native SVG support. The current
argument for not doing so is that they are saving me a few megs of
disk space or something along those lines. My Galaxy has 13 free gigs.
It makes no sense. I can only speculate that they are trying to
cripple web apps in favor of native apps. Apple is pulling the same
trick by blocking html5 audio in web apps, but at least the graphics
are great.
In fact, Apple mobile product have great support for SVG. Hats off to
Apple for supporting SVG and XPath. My app runs great on iPods and
iPhones with their native SVG. The animations are smooth as silk and
the SVG looks great. Every major browser on the planet has great SVG
support coming. We are finally on the verge of having usable SVG
everywhere .... EXCEPT on ANDROID because Google won't flip a simple
switch and turn something on that is already written and shipping in
other products and has been a standard mobile technology for, like,
forever.
It is a sad day when Microsoft and Apple are beating Google on
standards. Actually competition on standards is a good thing, but it
is sad that Google cannot keep up. If you would like to see SVG
support on Android, please follow this link and "Star" this Issue:
http://code.google.com/p/android/issues/detail?id=1376
Thanks,
Rick