Google Gears – Progress over the weekend

I had a little bit of spare time over the weekend to start debugging some of the problems my initial builds of Google Gears for the Windows CE platform have had.

With reasonably minor tweaks to the source code to work around some differences between the Win32 API implementations for desktop Windows and Windows CE (HWND_MESSAGE doesn’t exist and you can’t create windows with a client rect of 0×0 pixels) I have managed to get the ResourceStore and ManagedResourceStore demos working.

A very alpha version can be installed by downloading the cab file available at http://google-gears-ce.googlecode.com/files/gears-win32-dbg-0.1.51.0.cab. This is a debug build which explains why it is so large.

Remember this cab file will only work on devices which use the Internet Explorer 6 for Windows Embedded CE web browser and not Internet Explorer Mobile, which is the web browser found on Windows Mobile powered Pocket PC and Smartphone Devices (see http://msdn2.microsoft.com/en-us/library/aa908125.aspx for further details). If you try this out on your device, please ignore the two ATL Asserts which occur while Internet Explorer initialises the Browser Helper Object – these are something I have yet to debug.

After getting a complete port to Windows CE devices running the full Internet Explorer 6 for Windows Embedded CE web browser, it is my aim to continue the porting effort to support the popular Windows Mobile powered PDAs, but since a number of required interfaces are not supported by this browser, it will involve more porting efforts which is why I am leaving it until the Internet Explorer 6 for Windows CE Embedded port is more functional.

The current list of features which are non functional or need improving in this port are:

  • Worker Pool – at present attempts to create worker pool tasks fail. I have not investigated why this is occurring but since I have used the Script Engine hosting APIs to hsot the Javascript interpreter in the past I don’t imagine it’s a major problem.
  • Local Server – This seems to be caching files properly as evidanced by the Resource Manager demos working, however the Asynchronous Pluggable Protocol implemented by Google Gears to intercept requests for URLs starting with http:// does not intercept requests while offline. Again I have not investigated this one yet, but at present this means Google Gears won’t operate in offline mode.
  • HTML Dialogs – Google Gears uses HTML based dialogs for permissions prompts and administration, currently these are failing to display properly. To work around this presently I have disabled then, meaning Google Gears allows access to the Google Gears API to any website which requests it.
  • Build Scripts – The main build script “build-wince.bat” needs improvment to make it work in more systems. Likewise the changes to the main makefiles need tidying up/rationalisation to make it easier for the main google-gears project to eventually accept the patches.

I am keen to hear from anyone which is interested in contributing to this porting effort in any size, shape or form.

7 Responses to “Google Gears – Progress over the weekend”

  1. Zero Dai says:

    Thanks for your help in the forum. ^^

  2. Thanks for dropping by and taking time to check out my blog Zero Dai,

    For those not aware of the forums Zero Dai is referring to, they are the MSDN Forums, and in particular the Smart Device Development subsection – http://forums.microsoft.com/MSDN/default.aspx?ForumGroupID=11&SiteID=1

    These forums are a great way for people to obtain help and guidance when facing difficulties developing their own applications. I am one of many individuals who are fairly active in answering questions in these forums, very few questions go unresolved.

    I’m involved because it’s a great way to become involved in the community and help out other developers.

  3. Tbone says:

    This Gears port you’re doing is very cool. I saw your post on the Gears forum while looking for info about PDA support (I am most interested in support for PocketPC/Smartphone and BlackBerrys). I’ll give your port a whirl on one of my CE devices.

  4. Thanks for the encouragement TBone. I would be interested in any any feedback you have attempting to use the version I placed on the google-gears-ce website on a Windows CE device.

    I have managed to get a few more bits and pieces working since my last blog posting on the project, and am hoping to get time to package them up for another release sometime this upcomming weekend (work commitments have got in the way at present)

  5. Mauro Chojrin says:

    Hi:

    Me and a friend are developing a testing API for Windows CE and we found your project and became very interested because we feel it could help us test our development.
    Currently we have downloaded the code for Google-Gears-ce and the cab you provided but we’re unable to deploy and test it on a device emulator. The problem we’re having is that we haven’t figured out the way to get network connectivity from within the device emulator. If you would be so kind to share with us some of your experience in this area it would be very helpful for us and perhaps you can use our own tool to help you test your development. Thank you very much and we hope the project continues just as well.

  6. Hello,

    for those of you interested in WM powered device positioning, even without GPS hardware: II’ve developed uTrack, a tool to monitor the location of a WM powered device.

    http://www.petervrenken.nl/utrack
    forum.xda-developers.com/showthread.php?t=420508

    uTrack can be configured to use Google Gears GeoLocation feature if no GPS hardware is available, or the GPS hardware should be assisted.

    Greetings,
    __________________
    Peter Vrenken – MCPD: Enterprise Applications Developer – Sigmax Mobile Solutions
    Work: http://www.sigmaxmobile.com
    Home: http://www.petervrenken.nl
    Mobile Development tools: HeadsUp | uTrack | ANit
    Mobile technology: xTechnology | TransparaM | Pica.Mo

  7. Siddharth Iyer says:

    Hi,

    I tried downloading your cab file but apparently I don’t have access permissions for it.

    I have a question;

    How did you disable the permissions dialog for the gears API?

    I’m testing on a Windows Mobile Emulator and am having the same issues as well. Any help from you would be greatly appreciated since this problem is really slowing me down.

    Sincerely,
    Siddharth Iyer

Leave a Reply