Android Testing Update
We wanted to give you an update on where we’re at with the Lifeclock One companion app for Android. We are so grateful for your continued patiences but we know that many of you are disappointed that it’s not done yet (unlike the iOS app which has been available for some time). So in this post we’re going to provide some background on how we got to this point, where we are at today and how we get to the finish line.
Unlike Apple, the Android device ecosystem is massive. The size of this ecosystem presents a challenge to software developers who want to write apps for Android – which devices and which operating systems do you want to support? Apple has done a much better job of providing tools to developers to allow them to write to a single code base and target practically every Apple device out there. With Android, you need to decide on your target audience in advance. Unlike Apple, unfortunately the answer simply can’t be ‘all of them’.
When we launched our Kickstarter, we had an ambitious goal of targeting any Android device running 4.4 (KitKat) or higher. This turned out to be almost impossible to achieve given our resources. Trying to get the Lifeclock One to talk to this massive range of devices proved to exceed the scope of what we could reasonably achieve with our tiny team. So we had to pull back – this meant ripping out a lot of existing code and tweaking things so that we could target a consistent, more advanced/modern set of devices with predictable results. Subsequently, we are now targeting Android phones running version 6.0 or higher. This has given us a much better chance of success.
The biggest problem we were having was a consistent connection experience. Every device manufacturer seems to implement their Bluetooth stack in a slightly different way – an operating system like Android is supposed to abstract this but that simply isn’t the case. As of this past weekend, we’ve sorted out most of the connection issues. Now that we’re over that hump, we can do some cleanup and focus on implementing all the remaining functions properly and generally quality testing the app.
This past weekend we put together a short video showing where we’re at. What you’re going to see in the video below is a few things:
- Running the app for the first time
- Connecting to the Lifeclock One
- Basic functionality like brightness, display duration and scroll time.
This video shows results on four devices: Motorola Nexus 6 (Android 7.1), LG Nexus 5 (Android 6.0), Sony Xperia C5 (Android 6.0) and LG G4 (Android 6.0). The set up process is very different than iOS – you need to pair the Lifeclock One first through the phones Settings/Bluetooth screen. Once that’s done, you can launch the app. Please note that many of the permissions screens you see popping up will appear differently once that app is actually published on the Play Store. A reminder also that the Lifeclock One and the companion app don’t send any personal data back to any server. The only server communication that happens is when the app checks for a software update.
Here’s a short video of the OTA update process:
You can see we’re still not there yet – there are more than a few glitches. If you’re willing to sign up for beta testing, you’ll need two things: 1) an iPhone nearby in case something goes wrong and 2) a good dose of patience. The reason you should have an iPhone handy is in case the firmware upgrade fails – you can recover it with an iPhone – otherwise your Lifeclock One *could* get stuck in update mode.
If you’re still interested in beta testing this app, we would love to get your help. Since the app isn’t published on the app store, you’ll need to jump through a few hoops in order to get the app on to your device. If you are not that technical, we would suggest not going through these steps at the moment. Here are the steps you’ll need to do:
Install the app on to your phone:
- Download the .apk to your PC/Mac. Contact us directly for the download link – we’re only making it available to those who want to go through this process of beta testing the app.
- Enable developer mode on your Android phone. Go to the settings menu, and scroll down to ‘About phone.’ Find the section called ‘Build’ or ‘Build Number’ and keep tapping that label until you see a message that says ‘You are now a developer’ . Go back to the Settings page and you’ll see a new option called ‘USB Debugging’ – check that option.
- Turn your display timeout value on your phone to >=5 minutes.
- Install ADB on your computer and install the .apk using the command: adb install app-1.0.c391b3f.apk
Prepare your Lifeclock One:
- Do a Factory Reset on your Lifeclock One (see lifeclockone.com/manual for details on how to do this).
- Turn your Lifeclock One off (hold bottom button until power off sequence starts).
- With the Lifeclock One off, hold down both buttons for 8 seconds to force the Lifeclock One into update mode.
- Launch the app on your phone – make sure you select ‘Allow’ on all the pop up options. We are working to reduce/consolidate all the warnings. Note that the app does NOT send ANY data back to ANY server. We don’t collect ANY information from your phone.
- On the app, select ‘Menu’ – ‘Software Update’ – apply firmware update 1.0.0a75db7.
This is where things can go either way – the update should work and get all the way to the end. It is possible however that the software update could hang in the middle. If it does, you can try the entire operation sequence again:
- Hold down the bottom button on the Lifeclock One to turn it off.
- Hold down the bottom button to turn the watch back on – it will return to Update Mode.
- Kill the app on your Android phone and relaunch it – then try the Software Update again.
If it continues to fail – don’t panic: you will need an iPhone (or iPod Touch/iPad) to restore the Lifeclock One back to normal. The reason for this is that the iPhone app is rock solid and works great – there are still some scenarios/phones in our testing that are having these Android related issues. To be fair, we’ve only seen this issue on a Sony Xperia Ultra C5 – testing on LG, Google, Motorola and LG phones showed no issues where the OTA update would fail in the middle but remember there are a gazillion phone models out there. (We’re looking into the Sony issue but this just highlights the challenge of Android.)
Let us know how you go by emailing us at firstname.lastname@example.org
We want to thank all you Android users for being patient with us. The Lifeclock One works great without being paired to a phone, but the companion app gives you that added functionality that makes the Lifeclock One different from any other watch out there. We are working hard to get the same level of iOS capability out to our Android customers and we deeply appreciate your continued patience.
The Lifeclock One team.