When building closed-source software, you must not only protect your source code, but must protect the binaries themselves as well, so that you can distribute them without having to worry that they are used by people who shouldn’t access them. One way to do this is with software licenses.
When I created my commercial KeyboardKit Pro product, I had to be able define licenses for my various customers. I therefore created an on-device license engine, and have been using it for over a year now.
I have now extracted the engine from KeyboardKit Pro and made it its own thing. The result is LicenseKit - an on-device license engine that lets you protect your apps and software with commercial licenses.
LicenseKit licenses can define expiration date, tier (basic, silver, gold, etc.), supported platforms (iOS, macOS, etc.), supported bundle IDs, custom features, etc. Licenses can be defined in code, read from file or fetched from a remote api. You can also combine multiple data sources for maximum flexibility.
LicenseKit gives you a lot of flexibility to craft your own license model. It’s currently in early beta, and has a free tier that you can use with a capped number of licenses. More integrations are also being built.
If you or anyone you know are looking for ways to handle licenses in your apps or libraries, just reach ut or have a look at the LicenseKit website for more information.
Please share if you find it interesting. I appreciate all help I can possibly get to get this into the hand of users. Also please do let me know if you have any comments or feedback. I’d love to hear it.