Monday, November 30, 2009

Droid support and thank you, beta users!

We released WaveSecure on Android Market in early September. At around the same time, Sprint launched the HTC Hero and we were flooded with bug reports and issues from Sprint Hero users. Since we are in Singapore and did not have access to the Sprint Hero (not even on roaming, since Sprint is a CDMA network and there are no CDMA networks here!), we asked users to help us identify these issues so that we can fix them. The same thing happened when the Droid was released.

Lots of people volunteered to help us test and verify our fixes. We chipped away at the issues and consistently released updates every 2 weeks for the past 3 months. As of the last update (v3.0.0.34), we had full Sprint Hero support except for the location tracking feature, mainly because Sprint and/or HTC had done some customizations on Android 1.5 that broke our location feature if GPS was not available.

Today, we are glad to announce that WaveSecure supports Android 2.0 (in addition to 1.5 and 1.6) and CDMA networks. This means that the Droid and the Sprint Hero (except location) and future phones released on Android 1.6 and 2.0 will be supported, unless the manufacturers decide to muck around a little too much and break something that we depend on!

This update has quite a few major fixes/enhancements, listed below:

1. Enhanced location tracking accuracy. Some of users faced some issues with location tracking, sometimes showing the current position in another country altogether! We now ride on the Android platform's location information service. Preliminary testing shows that this information is more accurate.
2. Hard reset proof. If WaveSecure is packaged as part of the ROM, it will connect to the server and you can continue to track the phone. More details coming in the next blog post.
3. Better and faster lock. Some users have complained that the lock screen can be circumvented sometimes. We have improved the locking mechanism and it should be harder to circumvent now.
4. SMS restore fixes. Large amounts of SMS could not be restored - this has been fixed.

Of course, without our beta users, this would not have been possible. We'd especially like to thank Eddie, Warren, Thorvald, Andy, Matt, Kashif, Ben, Topaz and Chris for their support.

Thank you and May the phone be with you!

Thursday, November 12, 2009

WaveSecure update for Android - CPU sleep issue fixed!

We have published a major update to the Android Market that fixed an issue that has been bugging a lot of our users - WaveSecure keeps the CPU awake 100% of the time and does not let the phone sleep. Several users from MoDaCo forums and other enterprising users helped us figure out the cause and we are happy to announce that we have fixed it.

Below is a quick comparison of the partial wake usage (which was preventing the phone from sleeping) in the older version of WaveSecure and the newer version, using Spare Parts ,run on different phones simultaneously.


WaveSecure v3.0.0.31 - HTC Hero: All time partial wake usage



v3.0.0.34 - HTC Dream: All time partial wake usage



This update also includes other fixes such as:

1. Support for Sprint Hero (except location tracking). All our Sprint beta testers have been fantastic in helping us test and iron out the issues. Everything should work now, except for the location tracking feature - which we are trying to fix. However, if you have GPS turned on - location tracking will work for you. Of course, by the time we could get this to work the Verizon Droid came out and we are working on supporting that in the next update.

2. A couple of bugs were fixed for call log backup where the time wasn't showing up properly. If backed up from the HTC Hero, the number was showing up for missed calls.

3. Full support for MOTO Cliq (kind of irrelevant now that the Droid here) and HTC Tattoo

4. Improved number verification process during registration. The way number verification works is that it asks you to enter your phone number and then it sends an SMS to yourself. If you receive the SMS, the number is verified and you proceed with registration. We always assumed that it should not take you more than 1 minute to receive an SMS sent to yourself but man, were we proved wrong by the Sprint network! This was the root cause of Sprint users not being able to verify their phone numbers during registration. The timeout has now been increased to 3 minutes and a helpful countdown timer while waiting for the SMS.

Thanks to all the users who helped us test out our various fixes and being patient with us - we couldn't have done this without you!

Do head over to our official feedback forum to vote for and suggest new features/enhancements. May the Phone be With You!

Wednesday, October 21, 2009

v3.0.0.31: Critical update for WaveSecure on Android

A few quick words on why v3.0.0.31 (posted to Android Market on 20th October, 2009) is a critical update.

Our official change log for this release (found here) says:

- Android 1.6 (Donut) support
- Fixed bug (for cause #2) where phone sometimes locks on restart for some users, even though SIM is not changed
- Fixed number verification problem during registration
- Fixed bug where remote location command did not send location information to the server if HTTP was not available
- Enhanced buddy number validation checks. App doesn't accept special characters such as -,(,)
- Various other enhancements

The critical bugs that were fixed were:

Phone sometimes locks on restart for some users, even though SIM is not change. This was causing a lot of irritation for users (and for their buddies too) because WaveSecure was detecting a false positive SIM Change and sending out SMSs to their buddies. We finally found the cause (there were 2 causes - one of them we had fixed in an earlier update); which is why Cause #2 was fixed with this update.

Phone number wasn't getting verified during registration for some users (especially Sprint users). Our phone number verification process involves asking you to enter your phone number, sending a SMS text to that number (which is your phone) and then comparing the 'from' number in the verification text to the phone number you entered. This problem occured because we were trying to do an exact match between the two. While the number entered during registration is in the nice, full international format that we expect (+1650999999), the 'from' number in the text received is not, which was causing the problem. This has been fixed and users should not face these issues any more.

Technically, the phone number verification issue was one of the things that was stopping us from claiming full support for users on CDMA networks such as Sprint. Now that we have this issue out of the way, our beta users on Sprint will at least be able to register and this will unearth more issues. We have yet to test extensively and it will be some time before we announce full CDMA support.

Thanks to our beta users who have helped us debug these problems. If you are ever in sunny Singapore, drop us a line and we will buy you a beer at this place. It is right next to our office and owned by a mean looking biker dude (and a not-so-mean looking woman)

Friday, October 16, 2009

Help us debug problems with WaveSecure on Android!

WaveSecure on Android is currently in Beta and we've gotten a lot of great feedback. We're continuously working to improve WaveSecure and some of our users have been very helpful.

A few bugs have been reported - some generic and others, not so much. The cause of these bugs are pretty wide spread (custom ROMs, mobile networks etc) and it is extremely difficult for us to debug and fix these problems if we cannot replicate them in house.

If you face such a problem, please help us by installing a 'debug' version of WaveSecure on your phone which logs activites on your phone. It will be much easier for us to fix issues if we have the log file.

To install the debug build:

1. Go to Settings -> Applications. Check "Unknown sources"
2. Go to Settings -> Applications -> Manage Applications. Uninstall WaveSecure Beta currently installed
3. Make sure that there's an SD Card in the phone
4. Download the debug app from here: http://www.wavesecure.com/installations/ws-debug.apk
5. Install the application and then launch it

At this point, follow the steps you did to replicate the problem you were facing.

Once the problem(s) are replicated, the next step is to extract the log file. To do so (on a Windows computer):

1. Connect your phone to the computer
2. When the USB connected notification comes up on your phone, pull down the notification bar
3. Click on the USB connected notification
4. Click on Mount to mount your SD Card so that files can be copied from it. After this your SD Card will appear as a drive on your computer
5. The logfile (WaveSecure.log) is on the root folder of your SD Card

Email the log file to android at tencube dot com along with the following information:

1. Nature and details of the problem
2. Steps to reproduce
3. Phone model
4. Custom ROM name and version, if applicable
5. Country and mobile network


We'll follow up from there and email you back about the status of your bug report. We really appreciate the help - we will reply to every such email you send us, along with status updates. Thanks very much!

Note: Once you extract the log file, you can continue using the debug version of WaveSecure or uninstall the debug version and download the installer from Market. The drawback of the debug version is that the log file will continue to take up space on your SD card.

Head over to our official feedback channel http://feedback.wavesecure.com for new feature suggestions/bug reports. This will help us track issues and respond appropriately.

May the Phone be With You!

Wednesday, October 14, 2009

Part 2 of 3: How you can use WaveSecure to get back your lost phone: The five stages of grief

The TV show, Frasier (one of my favourites) offers some basic psychology education, especially the 5 stages of grief - Denial, Anger, Bargaining, Depression, and Acceptance.

Losing a phone can be traumatic for most people and the 5 stages of grief play an important part.

Denial

Usually happens between 0 - 30 minutes of realizing that you have lost your phone.

"No, no. I am not as careless as my friend XYZ. This can't be happening to me"

Pockets and purses are emptied furiously in search of the phone. A 2nd phone is procured through a friend/friendly person nearby. You call your phone incessantly, hoping that some kind soul will pick up and then you can beg/plead/threaten and maybe offer a reward for the return of your phone.


Anger

30 - 45 minutes

"How could I be so stupid to leave it in a cab?"

Much swearing ensues, punches are thrown to the wall. 5 (4?) bruised knuckles are acquired. Usually happens when your phone stops ringing and you can't reach it any more.


Bargaining

45 - 60 minutes

"If I get another phone, I will definitely do something to protect it. But please, I hope I can get back my phone this time around"

Praying begins, bruised knuckles et al. This is the crazy damn-I-wish-I-had-done-something phase, coupled with frantically calling people you know to find out how you could possibly get back your phone. We silently hope for one of our friends to be a Knight in Shining Armour and come up with a brilliant idea, but unfortunately it doesn't happen.


Depression

1 - 24 hours

"Gah, what's the point of trying to call my phone over and over again. I'm never going to get it back"

Sorrows are drowned. By this time, you realize that your phone is probably gone for good and you will never get it back. Funeral for your phone was considered and widely debated before being rejected.

On that note: this picture was part of our very first marketing brochure (back in 2006).
Acceptance

1 - 7 days

"Ok, I need to get a new phone"

300 contacts unremembered. Intense financial calculations on how you can afford a new phone. Spreadsheets are whipped out, financial models are made. You live without a phone for a bit and you wonder how you ever survived in ye olde days before you had a mobile phone.


However, fear not - if you have WaveSecure on your phone, you won't have to go through this. Which is why we say: May the Phone be With You!


Next up, Part 3 of How you can WaveSecure to get back your phone: Retribution

Thursday, October 8, 2009

Part 1 of 3: How you can use WaveSecure to get back your lost phone

Let's take a moment to talk about WaveSecure and its features here, in more detail than we have done earlier.

WaveSecure is a mobile security product that helps you in three ways - it protects your phone, your data and your privacy.

Protecting your phone

When the first version of WaveSecure was built, it attempted to solve two problems:

1. If someone picks up my lost phone, the odds are that he will put in his SIM card at some point. I want to know that guy's phone number.

2. I need a way to prevent access to my phone - a way to 'lock' it so that the phone becomes useless to whoever picks it up. Thereafter, he may be more willing to return the phone.

Thus the Lock and Track features of WaveSecure were born. Of course, we are now on v3 of WaveSecure and have added some jazz around these features.

Locking your phone means that:

1. Your phone looks like the picture on your right

2. No one can access anything in your phone - which means that no one can read your message, make calls (although you can receive them) etc

3. A "lock message" of your choice is displayed on the lock screen for the purposes of giving contact details or offering a reward and just plain swearing at the thief if that's your thing!


Tracking the SIM changes in your phone means that:

1. You will be notified of SIM Changes in two ways - your buddy gets an SMS from the new SIM card inserted in your phone and the new number shows up under the tracking section of the website

2. Using this information, you can either call the person or use this as evidence that your phone is stolen to make a police report. In some countries, the police will trace down your phone for you if you can give them a lead on the person who has stolen your phone and the thief's phone number will suffice.


A lot of users requested for the ability to view the location of their phone. Recently, we added the ability to track down the location of your phone as well! We'll talk more in detail about location and how it works in another post.




Protect your data

When you lose your phone, your data is gone with it as well. WaveSecure helps you keep your data safe by backing up your Contacts, SMS, Calendar (not available on Android), Call Logs, Photos and Videos. You can do this either from your phone or by logging on to www.wavesecure.com.

If you happen to change your phone, you can easily restore your data to your new phone once you setup WaveSecure on your new phone.


Protect your privacy

WaveSecure enables you to wipeout all your data even if your phone is not with you! Login to your account on www.wavesecure.com to wipe out your contacts, calendar (not available on Android), SMS, photos, videos and your external memory card.

This way, if you happen to lose your phone - you need not worry about your private data such as SMS, pictures or other documents getting in the wrong hands.

Coming up next - Part 2 of How you can use WaveSecure to get back your lost phone: The five stages of grief

Thursday, September 24, 2009

WaveSecure on Android - demo video

We have finally gotten down to finishing up the demo video that talks about how WaveSecure works on the Android platform.



Here's a video we did about a year ago about the adventures of a guy named Dave who lost his phone.



Coming up next: How you can use WaveSecure to get back your lost phone.

Stay tuned!