On Wed, Apr 8, 2009 at 8:38 AM, Lothar Kimmeringer <[email protected]>wrote:

>
> Hello,
>
> today I tried to run my main GWT-application (administrative
> backend of a server-application) on an iPhone/iPod touch and
> a G1 with Android. At the moment the application is still
> compiled using GWT 1.4.60, so some issues might already be
> fixed with later versions.
>
> The following things I saw trying that:
>
> Android:
>  - The browser coming with G1 is not able to do
>   HTTP Basic Authentication (WTF?)

That seems strange & unlikely given that it's Chrome (or at least some kind
of Webkit-based browser).  Try running your app in Chrome on the desktop -
does that work?  Do you have the latest updates on the phone?

>
>  - RPC-calls using serializable classes lead to ArrayIndex-
>   OutOfBoundsExceptions on the server-side when using
>   serialized classes (seems to work with GWT 1.5.3 if I
>   followed threads here correctly).


>
> Mobile Safari:
>  - Safari on an iPod touch 2G is showing the application after
>   some while and crashes after doing some RPC-calls.
>  - Safari on an iPhone 2G shows the application but instead
>   of crashing, the browser fails to do RPC-calls after a while.

Do you see these problems on the desktop version of Safari?  The iPhone &
desktop versions are pretty much identical in the backend.  What do you mean
by crashes?

>
>
> I think the problems with Safari are a result of the size of the
> application (HTML-file) of more than 1MB. The application is
> in my eyes simply running out of memory.
>
> Before starting a migration from 1.4.60 to 1.5, should I wait
> for 1.6 and use LazyPanel or is there no effect at all if I
> have a huge HTML-file anyway? Or is there now a way to modularize
> the application, allowing to download parts of the application
> on demand instead of one big HTML-file being loaded at startup)?

Build from trunk & use
GWT.runAsync<http://code.google.com/p/google-web-toolkit/wiki/CodeSplitting>.
LazyPanel is more for drawing performance.  You may also want to ensure that
you aren't leaving cycles in your references, thereby preventing garbage
collection (i.e. when you remove a widget, remove it's listeners as well).
Since you're also dealing with the mobile space, you may want to make sure
that when you hide a composite, you actually remove it from the page & then
recreate it as necessary if it gets added back (unless it's really
expensive).

Uggh - I wish there were decent profiling tools for web development to break
down memory usage of webapps.

>
>
>
> Regards, Lothar
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/Google-Web-Toolkit?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to