Blog updates

Sunday, 31 October 2010

ChromeMarks - update 2010.10.30 - Better folder browser

Another update to ChromeMarks

  1. Improved the folder browser used when creating a new bookmark or amending an existing one. Previously it was a standard "Spinner" widget which meant it was a list of all folder, but a flattened alphabetical list. The new widget gives a hierarchical view of your folders retaining their existing order(*) and structure.
(*) order is the same order folders display in the app - i.e. currently alphabetical.

A screenshot of the new dialog:

This new dialog is still a work in progress and I want to improve the styling and indenting a smidge, but the core of it is now in place.


ChromeMarks Community

I've create a community website available here

On this website, you can see my to-do list of work. You can vote for the features you want, and tell me the ones you don't want. You can also raise new suggestions for features I haven't thought of.

You can also use this to raise bugs or ask general questions. Hopefully, over time, people can come here and find existing answers to their issues. I'll try and enter a sprinkling of recently asked questions as well.

There is a permanent link on this blog - top left corner of the left hand pane. Click on it and you'll get a popup with the most popular items on the list and the ability to search/create directly.

Hope this helps.

Saturday, 30 October 2010

ChromeMarks - update 2010.10.30

A mild upgrade for ChromeMarks tonight.

  1. Fix a couple of Exceptions being reported by the new CrashReportingDialog.
  2. One person has been reporting constant "no network found" errors. I've tweaked the code a smidge (though I can't see how it would make any difference). But if the app thinks there is no network connection, it will now display back the status of the connections so at least you can see why.
  3. I've finally Googled the solution for getting the bookmark and folder list to be sorted case insensitive. I got so annoyed with the "Other bookmarks" and the "Bookmark Bar" swapping places.. :-) This has also been requested by a few users as well.
  4. I noticed in the analytics that some of the stranger errors were coming out. One as part of the sync where Google was saying your auth token was invalid. Trouble is, my app retrieved a fresh one a few milliseconds earlier.. I've tweaked a bit around here to see if this helps, but I doubt it. I suspect that Google's server that give Android users new tokens doesn't always talk to the Google server that deals with Chrome and Bookmark sync users. Grrr.
That's is for now.


Friday, 29 October 2010

ChromeMarks - update 2010.10.29

An update to ChromeMarks.

  1. If you refreshed an icon (or created a new bookmark with an icon) and the icon had less than 4 colours on it, This caused a crash in chrome when it next sync'd. It appears that Chrome has a sensitive spot with low color depth icons. Internally, I suspect it keeps them at >256 color depth so can't handle the lower depth icons. I've fixed this by grabbing the icon from another provider if the first is not suitable.
  2. A user has sent me logs with regular SocketTimeout exceptions on it. I've never been able to experience any myself and no other users have mentioned it, but I've changed the http classes a bit anyway. I've increased the timeout, changed the buffer size and if you get another of these, the app will retry the request once more just to be sure.
  3. I've included a Crash Reporting Dialog courtesy of the ACRA project. If the app now experiences an unexpected error, you'll get a notification of the error. Clicking on it will pop up a dialog and ask if you would like to send to a report. You get an opportunity to add some text and your email address if you like. If you press cancel, any data collected is discarded. This should help me fix anything unexpected. Please do enter your email address as without the context, it may be hard to fix.
  4. Noticed a bug whereby a user could try to launch one of their shortcuts that isn't a valid web address or requires software not on their phone. This is now reported with a nice dialog should you try and click on one of these.
Some screenshots of the Crash Reporting Dialog:

I was half way through the fancy new folder browser, but I've commented that out so I can fix these bugs.

More later!

ChromeMarks explodes!

Well, not literally... :-)

On Thursday, Android Central posted a very kind review of ChromeMarks. With phrases like "It's really that easy" and "It'll be the best $2.37 you spend today", I've seen an explosion in purchases of the app. The number of purchases has literally doubled in the last 24 hours. I've also made it into the "top 10 hottest apps" on AppBrain which is most likely due to the review, but I'm not complaining at all!

Analytics for the app showed that on Wednesday the app was opened 233 times. But on Thursday it was opened 830 times. I take these numbers with a pinch of salt as a lot of people use Adblock which stops all analytics, but it gives an idea of the relative increase.

But this has made me think more about the levels of support I can provide to you, my customers. I'm more than happy to respond to emails but I'm finding I'm responding to the same feature requests day after day, or explaining to another person why it's the Android Market that can't install my app and nothing to do with me.

I'd like to try and set-up some kind of forum where people can post questions and a - hopefully - helpful community can assist me with the answers. At the very least, people would be able to search for an answer. Let me be clear, I'm not asking for everyone else to do my support, I'll still be firmly at the reins answering every email within a few hours. But I'd like to stop the one-to-one communication and make it visible to more people.

Does anyone know of a decent free (or relatively cheap) forum website out there..? An ability to have polls or voting would be an additional bonus, but not essential. Ideally one where you need to register or use credentials  as well as I don't want a forum full of spam!

I've also decided that I'll try and use this blog more like a real blog instead of a simple "release notes" page. I'll try and update more frequently with details of stuff I'm working on or issues.


Saturday, 23 October 2010

ChromeMarks - update 2010.10.23 - now with added edit!

A major upgrade for ChromeMarks today.

You can now create new bookmarks, edit and delete existing ones. You can also edit and delete folders (Create folders may come in a later release).

Some juicier details:
  1. From your favourite browser, try and "share" a url.
  2. You'll get a list of applications that can accept this share, and ChromeMarks should now be in that list.
  3. Simply select ChromeMarks and you'll get a dialog where you can amend the name, url, icon and location to save it. NOTE: Stock browser doesn't send a name and rarely sends an icon by default.
  4. Click "create".
  5. ChromeMarks will sync your change and update it's database immediately.
  6. In your Google Chrome browser, the update is available immediately. Note that Google Chrome checks for updates at set intervals, so you may have to leave it for a few minutes or restart the browser to force a check.
Alternatively, in ChromeMarks you can open the menu in any folder (except the very top-most) and you'll have an option to create a new bookmark from there.

Similarly, long click on any existing bookmark or folder and you can edit their details. This includes fetching the icon, if you wish. Any changes are committed immediately.

You can also delete any bookmark or folder by long clicking on it, choosing "edit" and then clicking on "delete". Any changes are committed immediately. There are some folders you can't delete, such as the Bookmark Bar.

Some screenshots:

Editing an existing bookmarkShare a bookmark from the browser. Either long click on a web link or long click on the url in the address barChromeMarks receiving a request to create a new bookmark from a "share"d link.

There are a sprinkling of bug fixes along the way. Again, the database needs to be dropped and recreated. Hopefully we've got most of the bugs sorted so I'm not expecting another need to drop and recreate the database.

I've been playing for a while, but if you do find any bugs, please don't hesitate to contact me: chromemarks at and I'll happily help.

To celebrate this major upgrade, ChromeMarks will be 1/3rd free for the next 48 hours.


Tuesday, 5 October 2010

ChromeMarks - update 2010.10.05

Another update today. The normal list of tweaks:

  1. One of my users was having a problems with bookmarks/folders never appearing. The last release bought in the debugging option and he kindly mailed me the log file. This highlighted an error in some of the processing. Basically Google always sends data back in chunks of 250. But for this user, the first batch had no bookmarks in it (they may have been long deleted entries). Unfortunately, the app was coded to say "if the batch is empty, then exit the sync". This is now fixed (fingers crossed!). But I've had to empty the database to be sure that no-one else has missed a chunk of bookmarks along the way. Sorry!
  2. A requested option was to specify to auto-sync only over wifi. This is now in place.
  3. Some tweaks to the settings screen - the text by some of the settings will change to make it clearer what that setting is currently set to. Comments?
  4. The Create Shortcut seemed to be broken. That is now fixed. Plus, I spotted it would have failed if your bookmark had no icon anyway. Also fixed. People have asked to create a shortcut to a folder - it's on the list!
  5. Some Timeout handling if a network connection takes too long to respond. Hopefully this shouldn't happen often, but I notice it frequently with T-Mobile UK screwing up all my web traffic. There isn't a "restart sync" button, so I thought I'd try to catch these errors and handle them. The last release made the batches more transactional - so now if a sync fails during batch 3, when you restart the sync it will continue from where it failed at batch 3.
I've also had to add in Analytics code. Yeah - I hate it too. But I need to put them in to find out which parts/settings of the app people are actually using. I also need to get some *anonymous* and *averaged* numbers of bookmarks and folders so I can determine if I need to optimise those bits of code. As normal, no personally identify-able info is sent to Google or analytics - honest! Once I've got a better user base, I'll stick in an option to disable the stats.

That's about it for now. A reminder that the next major release will be attempting to add the update functionality to the local phone. This may take a couple of weeks to write - unless there are any other reported bugs, it may go quiet for a short bit. But I'll still be furiously tapping away, so feel free to keep sending emails to


Saturday, 2 October 2010

ChromeMarks - update 2010.10.02

A timely update to Chromemarks today. As usual, the highlights:

  1. A new SyncAdapter. This means that your device can periodically sync for you in the same way as gmail/contacts/etc. Note that this is does not use network tickles, so your device will stick closely to this schedule and won't be real time, unlike gmail who keeps an active network connection and receives changes almost instantly. The default update schedule is 24 hours. In the next release, I'll bring in options to allow customisation of this schedule.
  2. Some UI improvements. Got rid of the old ".." folder entry and we now have an "up" button and a dedicated "home" button, as well as a header showing the name of the folder you are in. the back button can go up a folder or exit the app - you can change that in the settings.
  3. An info dialog showing the number of syncs and the amount of data in/out as well as a count of bookmarks and folders.
  4. The ability to create a desktop/home shortcut to a bookmark of your choice. Once done, this will simply fire up your default browser with the specified url. The icons don't look too pretty as website icons aren't hi-def and are only about 16 pixels in size. Note that if you have uninstalled the default Android Launcher completely then you can't create these shortcuts. Grrr.
  5. The app can now remember the folder you are in, so the next time you fire the app up, it can start in the same place.
  6. The usual mild bugfixes and some extra exception handling - the app now checks for a working network connection before each chunk of code. It also uses some transactionality to help ensure the database integrity.
  7. The ability to enable full debugging to a file on the sdcard. Just go into the settings and enable it, but only for the duration of the current usage - the next time you go into the app, this will be reset. Since the sdcard is public, the debugging file is encrypted as it may contain your bookmarks. Obviously this file is only of use to me to try and help solve and problems users may be having. It can output a large amount of data, so I don't recommend turning this on unless you really need the output.
Lots more changes behind the scenes, though. The main one being an almost full rewrite of the main sync engine. Originally, this was coupled directly to the progress popup. But the progress popup is not useable/active during an automated sync. It took a while, but the sync engine is now a "black box" and sends messages to anyone who wants to hear them - this allowed a behind-the-scenes usage for automated syncing. The core of the logic is the same, but there may be the odd message on the progress popup who isn't accurate or up-to date - I'll keep my eye out in case there are any. Also some tweaks in the sql for performance.

On the horizon, I'd like to make the next release have some form of "update" functionality. I'd like to make all folders and bookmarks in ChromeMarks be updateable and syncable back to the cloud. After that, I'd like to try and make a special folder in your chrome bookmarks that will be a mirror of your device's bookmarks. Then you can create/amend bookmarks in your stock android browser and ChromeMarks will sync them to the cloud and you can change them on your PC in the Chrome Browser. And I also want to make the bookmarks/folders searchable.

ALSO: the next release will include Market Licensing Verification. So if you are using an unlicensed copy, this will be the last update that you can use. Sorry! I may also have to include some usage of analytics so I can find out the average number of bookmarks/folders to see if I need to optimise some of the code.

As usual, hope you all like the udpate. Let me know if any problems or feature suggestions!