It was pretty challenging to make an old project like Timerange look good in dark mode, but thanks to ability to define color sets in
.xcassets files and dynamic colors like
systemBackground it became a routine after a little while 🙂 It’s nice to see how Apple gives you as many things as they can so you can adopt new iOS technologies faster.
I’ve also fixed a lot of little bugs here and there, while also trying to make version release process easier and faster. One of the most tedious parts of it is of course making screenshots for every single required screen size and language. You can easily make a mistake here and then a set of screenshots for one screen will look different than for other screens. This time I tried to make it simpler for me by using fastlane. Their
snapshot tool automates screenshotting using UI tests that you can write. The best source of knowledge about UI tests that I could find is this video from WWDC 2015, highly recommend. Unfortunately, some parts of Timerange like time range selector (yes, class that allows you to enter a number of days, weeks, months and years is called
TimerangeSelector) are so old I couldn’t make it work with UI tests without rewriting the way it’s initialised, and I didn’t want to move my release date this time (I have a new app to make. More about that soon). So as before, I made screenshots manually, but this time also framed it using, well,
frameit, fastlane’s tool for adding device frames and text to screenshots. I’ve also refreshed the app’s icon, made a little video showcasing main features and changed a lot in keywords, so yeah, you can call it a pretty serious App Store Optimization! 🙂 We’ll see how it pays off in the near future.
So that’s how’s it going with Timerange. My next project is being written entirely using SwiftUI framework and so far I love it! More on that later.
Full changelog is below:
This update brings you dark mode for iOS 13 and fresh new app icon! Also in this update:
- Fixed sometimes incorrect calculation of the number of working and non-working days between dates.
- Improved notifications planning algorithm for time counters. Now even if you change your time zone often, notification will be received after specified amount of time.
- Fixed app crash when tapping on “Event in Calendar” button, if access to Calendar is denied.
- Many more little fixes throughout the whole app and on the widget.