TelegramMicro is an attempt to build a Telegram implementation for J2ME, there's still alot of work to be done but I think I've gotten most of the difficult stuff out of the way now (in terms of protocol and such) it's just a matter of implementing all the MTProto objects and creating a UI.
This project can be built using the Sun Java Wireless Toolkit, which you can install on Ubuntu by following this StackOverflow answer. Once installed you should copy this repository to your j2mewtk folder (default is ~/j2mewtk
) under 2.5.2/apps/
and you should see it when you go to 'open project'. Then you can click build
then run
.
- If the emulator comes up with a white screen restart your computer, I think there's some weird conflict with Docker, so launching docker at any point during a session means you'll need to restart your computer.
- Additional emulator instances may randomly appear when running, just get used to ignoring or closing them, it's a bug with ktoolbar.
If you want to help out but don't want to work on this part of the project, there are a few things that would be useful:
- A J2ME runtime that can run headlessly so we can have a real CI pipeline
- A modern libre replacement for the J2ME WTK that doesn't require as much hassle to get running
- Some kind of preprocessor or compiler that would give us compile time function execution so that we can optimise things like public key storage while keeping the code readable
- A highly optimised server that solves
n=pq
for 64-bit integers givenn
wherep < q
andp
andq
are prime. This task would lend itself well to C or even Rust. This would be useful in improving performance at the proof of work stage of the authentication process: https://core.telegram.org/mtproto/auth_key#proof-of-work