- #Garmin watch faces battery install#
- #Garmin watch faces battery android#
- #Garmin watch faces battery code#
#Garmin watch faces battery code#
So now, once we have a layout defined, we can get the element in code by self.timeView = View.findDrawableById( "timeLabel") Īnd set its value, for example for the hours and minutes: Toybox.Application gives us access to properties that can be set by the user in the app settings. The distance is in cm, so we’ll have to convert it to miles or km based on system settings Toybox.ActivityMonitor gives us heart rate, steps, burned calories and distance walked/ran since midnight. Functionalityįor getting the data on the screen we’ll use Toybox.ActivityMonitor I also wanted to display a grid of gray lines, like on Casio watches, this is taken care of by:Īt this point all data except for the time is hardcoded. You can define coordinates in pixels or percent. So, if you place something in the corners they will not show up, you’ll have to experiment with coordinates, like in the layout I have below: When laying out the elements on the watch face you have to remember that the coordinate system is based on a square screen, so the corners are beyond the round viewport of the watch. This makes you really appreciate JetBrains’ IDEs (They did not pay me to say this.)
#Garmin watch faces battery android#
Something that only takes a few seconds to implement in Android Studio now takes forever in Eclipse. It’s clunky and unnatural and unintuitive. Unlike working in Android Studio however, working in Eclipse feels like I’m back in early 2000s. It looks like Garmin is running a highly customized version of Android, so Android devs will feel right at home here... if you want a flashback to the early days of Android. tColor(Application.getApp().getProperty("ForegroundColor")) Īgain, the way layout works is very similar to Android, the watch face layout is located in /resources/layouts/layout.xml Source code of the sample app looks very much like Android source code, with classes extending Views, xml layouts and referencing elements by id: var view = View.findDrawableById("TimeLabel") I’m starting to really like these Garmin folks, they seem to have a sense of humor. > monkeyc -d fenix5plus -f /path/to/monkey.jungle -o project_name.prg -y /path/to/Dev_Key If you followed the instructions to the letter then you’ve probably installed command line tools, which give you wonderful commands like: Once all steps are completed, run the app and this is what you’ll see in a simulator: The installation will be somewhat painful if it’s your first development endeavor, but nothing like installation of an IBM Websphere Portal.Īfter all installation is done you can go ahead and create your own sample app to make sure everything works.
#Garmin watch faces battery install#
In short, you’ll need to download and install the Connect IQ SDK, sign up for dev account, install Eclipse (yuck) if you don’t already have one, install Connect IQ Eclipse plug-in, which turns Eclipse into a Connect IQ development environment, and generate dev key. Nothing exciting to talk about here, I just followed Garmin’s getting started guide: I went on to design the dial on a piece of paper as I’ve heard that designing upfront makes the whole development process easier, and so I went through a couple of iterations. I didn’t want to ask users for any extra permissions and I wanted this app to be as easy on the battery as possible, without any background processing. I wanted the dial to show time, date, weather, pulse, steps, calories, distance walked today, and battery charge. I wanted the watch face to look like Casio G-Shock because they are awesome, particularly G-LIDE model (GBX100) So, with that in mind, we’re going to design and implement a watch dial in monkey-c and deploy it to Garmin’s IQ store. Garmin has an equivalent of Apple App Store (good name) or Google Play Store (horrible name), and it’s called Garmin Connect IQ Store (I’d like to be in that naming meeting)Īpp development for Garmin watches is done using proprietary language “Monkey C” () (probably named in that same meeting after everyone got drunk) It is that last aspect that we’re going to concentrate on in this tutorial. They are rugged, they hold the battery charge for days, some models even weeks, and they are highly customizable. There’s a good chance you’re wearing a watch on your wrist right now, and if you’re not wearing a horologically significant or sentimental time piece you’re probably wearing a smart watch, and if you’re wearing a smart watch it should be a Garmin watch (they did NOT pay me to say this)