Native Multi-platform Game: Published (12 of 12)

Ana Redmond
3 min readDec 15, 2018

--

The last 20%

With data testing completed and subscriptions integrated via StoreKit, we are ready to release infinut Math Kindergarten with 30 lessons to teach kids math concepts. 1st Grade with 40 lessons and 2nd Grade with 50 lessons will be easier to convert and should be published within the next month or so.

There was only one minor issue during publishing that Kotlin-Native caused: when we uploaded the app to the appstore, it was rejected at first because NSMicrophoneUsageDescription was not provided. We are, however, not using any recording APIs, only playback. It took some time to figure out that since were were invoking AVAudioSession from Kotlin-Native, there is a wrapper that Kotlin-Native created for the recording function, that in turn triggered the error. The only workaround at this time was to provide a NSMicrophoneUsageDescription. With that defined in the apps info.plist file, the archive was accepted for internal testing.

Technical problems all solved, for the last week, I’ve mostly been working on the Legal. The first submission was rejected and I added a new screen clarifying how auto-renew subscriptions work and also added Terms of Use working with the lawyer. The process may be tedious, but it is worth it. Apple provides clear reason for why the app was rejected, and have a good amount of samples and guidelines available on how to fix the issue. It will help make the Android app better too when we update it to match the iOS one.

End of a fruitful year

Once the Kindergarten app was released, I continued to complete the 1st Grade and 2nd Grade apps. It is all released now. Reflecting back, the scariest part of the project were the many, many times that I had to solve problems with no documentation, and no code samples. And, I was pretty much on my own. I could ask questions on the Kotlin-Native slack channel. They were very supportive, but, they neither had access, nor the depth of understanding of our code-base.

Requiring both creative thinking and grit, this was the toughest project I have done in my 20 years of coding. I learnt multiple languages: Kotlin, Swift. I worked on multiple architectures: iOS and Android. It was a great year of learning and growth.

A new beginning

Ours hasn’t been a typical journey. I had been building learning games for kids since 2011. But, they were getting out of date. Then in 2016, we won a NSF grant. That year I was able to build a team, and games that I had been dreaming of building, but, couldn’t find the funding to. That was a good time.

When that funding ran out, I couldn’t afford to keep the team. I looked for funding for a while hoping to keep the small team. But, wasn’t successful. Letting go of the team was the painful time. A year+ later, there is some revenue coming in. I use that to pay for graphics, audio, and keep creating. I do the code myself. I’ve stopped looking for funding. I am looking for potential partners/licensees.

Taking it one day at a time, I am happy building learning games for kids and thankful that I am able to. Next, I am looking forward to a year-end break just having fun with kids during the holidays.

Merry Christmas and a Happy New Year.

--

--

Ana Redmond

Software Designer and Developer. Mother. Building educational apps for my daughters to teach them math concepts at infinut.com