Register Guidelines E-Books Search Today's Posts Mark Forums Read

Go Back   MobileRead Forums > E-Book Readers > Amazon Kindle > Kindle Developer's Corner

Notices

Reply
 
Thread Tools Search this Thread
Old 02-25-2024, 09:43 AM   #1
Maimun Ahmed
Mr. Developer
Maimun Ahmed began at the beginning.
 
Posts: 21
Karma: 10
Join Date: Feb 2024
Device: Kindle Voyage
Exclamation Application/Software development for Kindle

Hi there, mobileread family. I recently stumbled upon an e-reader application named "KOReader". I use a jailbroken Kindle Voyage and I am willing to make an open-source software like koreader as one of my personal projects.

Of course, I can develop my app over KOReader but then I will have to code in Lua and I am not familiar with it.

Is there any way I can make an application for kindle with another language (like Java or C++ or javascript or python). I am completely new to developing on kindle so I would be very thankful if you could explain it to me in detail. Appreciate your time.

Thank you.
Maimun Ahmed is offline   Reply With Quote
Old 02-26-2024, 12:55 PM   #2
fonix232
Enthusiast
fonix232 doesn't litterfonix232 doesn't litter
 
Posts: 35
Karma: 102
Join Date: Jul 2016
Device: KOA4
Well, yes and no.

Kindles are generally quite locked down, and even apps like KOReader and KUAL need some hacky ways to work those limitations around.

First limitation is the launch approach. Kindles used to allow some limited apps called "kindlets" (which is how e.g. KUAL installed itself, and how KOReader's homescreen launcher worked), but it was recently removed. Kindlets, while limited, were much more portable than the other option - booklets. (sidenote: AFAIK the Voyage did not get the update that removes Kindlet support, so you should be able to use that approach).

Booklets are system-installed Java applications that, aside from a JAR file containing at least one final class extending Booklet/AbstractBooklet, and register it in a system-level SQL database (basically, an "install" process). The latest KUAL releases are now in this format.

Both of these formats are primarily Java, however do note that there isn't really a UI library for these approaches, and you'll need to handle the UI yourself.

My recommendation would be that you look into the KUAL sources, as well as the two KOReader Launcher approaches:

- KUAL (maintained by NiLuJe): https://github.com/NiLuJe/KUAL_Booklet
- KOL Booklet: https://github.com/yparitcher/KUAL_Booklet
- KOReader Booklet: https://github.com/koreader/kpvbooklet/

You'll also need a bunch of the framework files from your Kindle, mainly from /opt/amazon/ebook/lib and /opt/amazon/ebook/booklet. Primarily kaf.jar (which is the Kindle Application Framework).

There are some Python runtimes built for various Kindles in the Snapshots threads too, and IIRC NiLuJe maintains an fbink Python wrapper, which you can use for the UI.

Then, finally, you can do WAFs (Web Application Framework) - as Amazon moved towards a Chromium based frontend, they introduced these (much more limited) web apps, but getting third party ones into the system is quite hacky and semi-tethered.

Overall I think your best bet is trying a Java Booklet, but it all depends on what kind of app you're trying to build.
fonix232 is offline   Reply With Quote
Advert
Old 02-26-2024, 01:22 PM   #3
j.p.s
Grand Sorcerer
j.p.s ought to be getting tired of karma fortunes by now.j.p.s ought to be getting tired of karma fortunes by now.j.p.s ought to be getting tired of karma fortunes by now.j.p.s ought to be getting tired of karma fortunes by now.j.p.s ought to be getting tired of karma fortunes by now.j.p.s ought to be getting tired of karma fortunes by now.j.p.s ought to be getting tired of karma fortunes by now.j.p.s ought to be getting tired of karma fortunes by now.j.p.s ought to be getting tired of karma fortunes by now.j.p.s ought to be getting tired of karma fortunes by now.j.p.s ought to be getting tired of karma fortunes by now.
 
Posts: 5,278
Karma: 98804578
Join Date: Apr 2011
Device: pb360
Quote:
Originally Posted by fonix232 View Post
AFAIK the Voyage did not get the update that removes Kindlet support, so you should be able to use that approach.
There were many firmware updates for the Voyage after kindlet support was removed.
j.p.s is offline   Reply With Quote
Old 02-28-2024, 10:58 PM   #4
Maimun Ahmed
Mr. Developer
Maimun Ahmed began at the beginning.
 
Posts: 21
Karma: 10
Join Date: Feb 2024
Device: Kindle Voyage
Thank you for such quick answers. You guys are amazing.

However I ended up using Lua as I found the language very easy to learn and the KOReader source code was so properly commented / documented (I can't remember the exact term). Moreover, if you develop over KOReader's source code, you get a good safety that your device won't get stuck as if your code somehow crashes; it will exit into the kindle OS.

Thank you guys for your answers. Have a great day!
Maimun Ahmed is offline   Reply With Quote
Reply

Tags
kindle 5, kindle developer guide, voyage

Thread Tools Search this Thread
Search this Thread:

Advanced Search

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Hanlin v3+ application development Kryptozoon HanLin eBook 8 12-07-2021 12:34 PM
help on new application development towerale Onyx Boox 0 03-26-2011 03:01 AM
Application Software Development victoriabrown enTourage Archive 1 05-16-2010 11:54 AM


All times are GMT -4. The time now is 02:41 PM.


MobileRead.com is a privately owned, operated and funded community.