Blog updates

Friday, 22 July 2011

ChromeMarks update 2011.07.22

Hi all - time for another update to ChromeMarks. Thankfully the changes made on the 12th July haven't had any issues that required a fix here, so these are all new features or fixes to things that have been broken for a while.


  1. New features - Gestures. Only in the paid app. You can now specify that flicking up or down performs some action (i.e. up a folder, goto root) and swiping a bookmark or folder left/right will perform something else (i.e. open in new window, edit, delete). You can configure the "zone" that detects flings so it doesn't disrupt with your normal scrolling (i.e flings only work on the left half, right half, middle half, etc) and also configure the detection speed. I'm not too sure with the detection speed - it may be oversensitive, it's hard to tell as it also depends on the screen size and possibly the cpu speed. Some screenshots below.
  2. New translations. Swedish, Dutch and Japanese. Thanks to all the translators who have helped (in no particular order) Kees Huiberts (nl), Gerben Markvoort (nl), Kjell Kernen (sv), Yutaka Takeda (ja), aozora (ja), Kazuo Ugai (ja).
  3. It's clear from the automated bug reports there are many problems with the manufacturer builds of 3.0.1. There are many posts on the android developer forums where errors have been reported and the stock answer is "how can that possibly happen?" For whatever reason, some of the core java code is corrupted and invokes something else which will always be wrong. I don't know how it can happen, but it clearly is and many apps are affected by things that should *never* fail, but do! I've tried a few fixes here to deliberately avoid running the bits of code that knowingly fail on 3.0.1.
  4. Note, the above fix is different to the other issues with Honeycomb generally regarding restarting the app keeps force closing it. That's due to changes Google forced on us with Honeycomb and neglected to make it backwards compatible with existing apps. Grrr. Hopefully a fix in a later release, but it will need a serious rewrite.
  5. Some tweaks to the settings screens to dynamically resize the text for each setting's title. Hopefully you won't see text disappearing under a checkbox or drop down widget. Unfortunately I can't do this everywhere else, so popups and other text fields are still fixed sizes.
  6. Changed the "Frequently asked questions" to "Help". The content is no longer hard coded answers. I've given a list of the most popular questions and linked them back to the community website. This allows me to provide more in depth answers, where needed, but to also be able to update them real-time. Also allows users to comment on them and get responses to those comments. Unfortunately this does mean the actual answers are no longer translated - though userecho (the website the community site is hosted with) says it will bring that functionality in at a later date.
  7. If your first sync failed, you might have ended up with duplicate data on one of the tables in the database for each successive failed sync until it finally worked. It wasn't actually a big problem, but it might have simply made the database a smidge bigger and slower to access. Only talking a couple of extra records - if you had 1000 bookmarks, this would have had a negligible effect. On upgrade, the app will detect this and remove the extra records.
Note, there may have been some other changes that either Google started making from 12th July, or took effect due to me upgrading to the latest version of chrome sync service:

  1. Some Chinese users were constantly getting ssl handshake errors. The analytics confirmed these errors were coming out for previous versions of the app as well, so it wasn't related to the last upgrade. It looks like an internet server somewhere in China that passes the traffic through to Google was mis-configured. After exactly a week, the reports started dropping fast. Thanks to Leo for sending me debug logs and for testing every few days and confirming things were working. Good job to, I wouldn't know where to complain about it!
  2. Some users have started receiving "throttled" errors in the app when they change bookmarks or make new ones. Google normally throttles users to 100 changes a day. But previously it had always been a specific client software that was throttled (i.e. your desktop browser was throttled, but you could happily make 100 changes in ChromeMarks). The comments from some users might indicate that Google has changed this to throttling per user account - so irrespective of the client software, *you* can only make 100 changes a day. I've tried to get more info from Google, but don't hold your breath. Remember that auto-fill entries also count to your 100-a-day, so if you fill in a lot of form fields and have auto-fill synced, you'll hit your limit fast. More updates if I find out more info.
Some screenshots of the updated main settings screen and the Gestures screen showing some of the options (more off the bottom of the screen):


A reminder that I'm now on twitter as @chromemarks. Follow me if you want to hear about new features or Google outages and feel free to ask questions or comments.

Thursday, 21 July 2011

Twitter action!

Just a quick message to say that I'm on twitter as @chromemarks and http://twitter.com/chromemarks. I'll try and tweet on new features I'm working on, new bugs or issues and anything else that might be useful. Send me a message if you have ideas, comments or questions!

Tuesday, 12 July 2011

ChromeMarks broken - IO Exception errors

Google have made some changes somewhere which has broken all ChromeMarks functionality.

I'm trying to fix it and hope a new release in the next day or so. Please bear with me - remember this app is coded and maintained by a single person during his spare time!

I don't know what they changed. From what I can see, the data is coming back fine, but at the very end of the sync are a couple of fields to denote the final progress and I suspect they've changed something around that area. It's a bit annoying as one of the fundamental purposes of the protocol buffers Google invented and use for this communication are meant to be always backwards compatible.

I guess Google thought that the only people using chromesync would be users of Chrome and since they should be auto-updating, what's the harm in turning off some old server functionality, eh....?

More updates later.

UPDATE: 22.45pm BST. I think I've fixed it. Will update more here in the next hour while I refresh the Market.

UPDATE. So, I'm still not exactly sure what they broke, so I've had to upgrade the app asap to the latest protocols. The app has gone from release 24 to release 27. Google have made quite a few changes along the way, partly why I've been putting this off for so long.

But with a nice bit of Fiddler (where would this app be without it??) and I *think* I've worked out how the new protocols work. They didn't quite fit immediately in, but with a squeeze, they work.

Unfortunately Google have changed the way they track changes and moved from an increasing "number" to a semi-random byte array (may not be random to them, but clients should not expect them to follow any logical pattern). This necessitated a change to the database that ChromeMarks is held in. If I'd done this as normal change in my own time, I would have written a migration into the app to fix this as soon as you upgrade. But I didn't want the app to be offline for too long and my wallet can't afford all those annoying people that vote one-star, so I've chickened out and made the app reset-to-default when you open it to force you to redownload. Sorry! Not my fault!

I've tested what I can in the time so far, but since the bug happened 24 hours ago, I've needed sleep, travel time and a normal job, so please be gentle if there are a few more bugs I didn't spot! They will get fixed as soon as I can. I've only checked it on Froyo as that's the most prevalent - I'll have a try shortly on Honeycomb as that's the most likely to be tetchy.. :-)

Annoyingly I was going to make a release this weekend with some real goodies for the paid app (could I say it was a "gesture" to "fling" these changes in your direction?), but now I've got to merge two changed versions of the app together. So the next official release (barring bug fixes) will probably be next weekend.

As usual, thanks for your support and to the people that mailed me letting me know there were problems, and to everyone else who actually read the note on the Market.

I think I need some sleep...

Saturday, 2 July 2011

ChromeMarks updated 2011.07.02

Another update. As normal, the details in more detail (!)

  1. Experimental fix for Samsung owners who experience disappearing local bookmarks created by ChromeMarks. The root cause is due to Samsung making naughty changes to the Stock Browser and neglecting to make those changes work with the hundreds of bookmark apps on the Market. Lots of thanks to Emiel who sent me enough files to guess the changes made by Samsung. There may still be some more changes needed here to polish it a bit, but the bookmarks are now visible, at the least. NOTE this has only been tested on the GT-I9000 - other Samsungs may work, or not! Let me know! When you first upgrade, the app will attempt to fix any bookmarks you may already have there and then. Otherwise, the normal sync should do the work anyway.
  2. Added Portuguese translation. Though I'm a bit worried as to wether it's Brazillian Portuguese or normal Portuguese! Time will tell... :-)
  3. Fixed the Folder browser on Honeycomb devices. This is used in the settings when choosing the Home folder, or when editing a bookmark/folder and choosing the folder it is saved into. It was definitely a Honeycomb bug as it worked fine in all other versions. But it was hard to track down! But for some reason, I made a sprinkling of tweaks that made it suddenly work - I saved the changes immediately and cross the fingers it doesn't stop again!
  4. The usual bug fixes along the way.
No pictures this time as nothing UI has changed. There are a sprinkling of UI improvements I want to make soon, Gingerbread needs a bit of TLC now.

Wednesday, 22 June 2011

ChromeMarks update 22.06.2011

Another update to ChromeMarks. The juicy details:

  1. When a sync finishes, the last date something was received by Google is displayed back as well. This should hopefully allow you to see quickly if your Chrome browser is actually syncing - if the last date reported is two weeks ago but you know you created a new bookmark in Chrome yesterday, then Chrome is lying to you.
  2. Initial work on a "first time use" popup. Currently this just confirms the date of the last change received by Google. Will detect and add more soon, such as "have you enabled sync in Chrome?" or "you have duplicates, would you like to know how to fix Chrome to correct it?" Again, trying to step the Market comments saying my app is not working, when it's completely down to Chrome bugs!
  3. Authenticate with Google once per week instead of every sync. Should speed things up a bit. A checkbox under Advanced settings can turn this off if it causes trouble. I may be able to extend this to maybe two weeks or more? It should handle password changes, but I haven't tried to confirm it!
  4. German translation. Tons of thanks to Steven Jung for all his help.
  5. Some tweaks to the settings screens, specifically for Light themes. Someone whinged in a Market comment which prompted me to check on the status of android bug 4611. There had been a recent update from someone suggesting another way to try. Things look better now.
  6. Corrections to some translations, just a handful of Italians ones tweaked.
  7. A sprinkling of bug fixes.
  8. Big G made changes that meant I may not have been receiving bug reports for the last month. Google changed it such that Docs form submissions had to be by https where previously they could be unsecure. There had been a change to ACRA recently to ensure the submitted bug reports are https so I upgraded the single line of code. There's a newer version of ACRA that I might migrate to soon as it captures a lot more helpful info after a crash.
A screenshot of the new "this is the first time you synced, here's the last date reported by Google that they received bookmarks from your browser":

Sunday, 5 June 2011

ChromeMarks Update 2011.06.05

A long overdue update to ChromeMarks. As usual, the list of the all important stuff:

  1. New app icon and artwork. Thanks to Dries Oeyen (http://nexworx.com/dries) for his work and for everyone who voted. Thanks also to the runner up Ă‰milien.
  2. Significant changes to the core of the sync engine. I've written some of it in native code (which is C). This may not bring much performance improvements, but it does allow me the potential to easy merge large chunks of the real Chrome source code into the program and benefit from reliable code and not having to rewrite it into another language. But I'm new to this and I can't guarantee there isn't a memory leak here or there or any incompatibility. I'm nervous as it's compiled for a specific architecture which allegedly should work on all current android devices - but until it's out there, I won't know for sure!
  3. A fix for users that had overriden the home folder and experienced a crash when they opened the app. This was usually due to that overriden folder being deleted later or updated later and the app not handling that well.
  4. Italian translation. Thanks to Sergio Alisi for all his work.
  5. More captures of corrupted databases. Android really does have a lot of soft spots..!
Sorry it took so long this one, but I had to learn C from scratch and it took a while to get something stable enough to prove this was a valid direction.

Saturday, 7 May 2011

ChromeMarks - Vote for a new logo!

Hi all. I've opened up a public vote for a new app logo. Since so many of you [ :-P ] like to leave comments on the market about the logo, now's your one and only chance to help pick the new one!

Simply goto www.howardb.com and click on "vote" in the menu. There are four logos to pick as very kindly provided by two fantastically eager designers. Personally, I'm happy with *any* of them - but you've seen my last attempt, so this time, I didn't want to be the one making the choice.

Please register your approvals using the online vote. Votes are open for two weeks until 20th May and will be used from the next release of the app.

Feel free to leave some comments on the poll, but I don't think I can respond to them, so if you do have questions, it would be simpler to mail me direct chromemarks@howardb.com

NOTE also that the Chrome logo is still copyright Google, so I can't make the new logo any more "like" the chrome logo - it deliberately has to be different, so please don't ask for it to be more Chrome-y as my hands are tied.

Thanks again!