Repository navigation
Releases
LeanMark 0.2.0
LeanMark for Android 0.2.0
LeanMark for Android 0.2.0 brings the reader settings of desktop LeanMark
0.6.0 to the phone, shows "On this page" on a phone with the section you are
reading highlighted, and is about half the size.
On Google Play this app is in a closed test. To join:
https://abooodbah.github.io/leanmark-android/
What changed
- Settings sheet. The new settings button opens a sheet at the bottom of
the screen with the theme, the text width and the zoom. Back closes it. - Text width. Narrow, Wide or Full, remembered. On a phone held upright
the three look the same, because the screen is narrower than the Narrow
column; they differ in landscape and on tablets. - Zoom enlarges only the document. The toolbar keeps its size. A pinch
steps through the same zoom levels as the sheet's buttons. The system font
size still applies to the whole page. A zoom level saved by 0.1.x opens at
the same text size. - Theme dot. The theme button shows a coloured dot for the current theme.
- On this page. A round button in the bottom corner opens the document's
sections as a sheet. The section you are reading is highlighted and kept in
view, with the same look as on the desktop in all five themes. On a wide
screen the list sits beside the document instead. - Missing images. The note shown in place of an image that cannot load
now uses the theme's colours. - Smaller. The APK is 2.3 MB instead of 4.1 MB, and Google Play
downloads 1.3 MB to an arm64 phone instead of 1.5 MB. - Light and dark. Switching the phone between light and dark keeps
your place in the document. With the System theme the page takes the new
colours; a chosen theme stays as it is. - Keyboard. With a hardware keyboard, the reader's shortcuts work as soon
as a file opens.
Still no permissions and no network.
How it was measured
On an API 34 emulator without a GPU, in the CI budgets job, release builds
of 0.1.2's code and of 0.2.0 measured in turns:
- APK, all ABIs: 4,103,101 bytes for 0.1.2, about 2.25 MB for 0.2.0. The
native library now exports only its JNI entry points, so the linker drops
the unused C++ runtime (1,113,648 to 411,128 bytes on arm64). - Java allocations up to a 1 MiB document on screen: about 13.6 MB before,
8.9 MB now, from two fewer copies of the document. - Rotating a 1 MiB document takes the same time as before (155 and 165 ms
against 172 ms). - Zooming a 1 MiB document takes the same time as before.
- Start time is unchanged. Fifteen cold starts of each build, taken in
turns, gave 1,166 ms to the document on screen for 0.2.0, 1,138 ms for
the same build installed again, and 1,206 ms with the 0.1.2 reader page.
The phone budget is under 1 s from an empty app's start. - Switching the phone between light and dark no longer reopens the
document: on a 1 MiB document the new colours are on screen in 1,198 ms
against 1,369 ms, its diagrams are drawn again in 3,228 ms against
4,550 ms, and the reading position is kept.
The emulator has no GPU, so start time and smoothness on a phone are not
measured here; PROGRESS.md has the phone test.
Known gaps
- Checked on emulators (Android 8 with WebView 69, Android 14 with WebView
113), not on a real phone. - On a phone held upright the three text widths look the same.
- WebView 69 lays out the sheet's choices one per line.
- Images next to the Markdown file and links to other local files are still
not shown.
Files
Each file has a .sha256 next to it. LeanMark-0.2.0.apk is the build to
install. It is signed with the same release key as 0.1.2, so it installs over
0.1.2.
LeanMark 0.1.2
LeanMark for Android 0.1.2. The first GitHub release signed with a stable release key.
On Google Play this app is in a closed test. To join: https://abooodbah.github.io/leanmark-android/
What changed
- The APK is signed with a release key that stays the same from now on, so later versions install as updates.
- If you installed 0.1.0 or 0.1.1 from GitHub, uninstall it once before installing this one. Those were signed with a throwaway test key. Google Play installs are not affected.
- The app itself is unchanged. Still no permissions and no network.
Files
Each file has a .sha256 next to it. LeanMark-0.1.2.apk is the build to install. Its signing certificate SHA-256 is 9E:AF:E5:CF:33:A4:03:FE:5D:7A:08:A7:81:E9:D9:E3:18:06:77:52:2B:34:F1:E8:52:E9:8B:7D:C8:B4:3E:5B.
LeanMark 0.1.1
LeanMark for Android 0.1.1. The toolbar now fits a phone screen.
Not on Google Play yet. This build is for testing on a phone.
What changed
- On a phone the toolbar was wider than the screen and the Open button was cut off at the right edge. Now Find, Copy, theme and Open stay on one row at 320, 412 and 640 dp, and nothing scrolls sideways.
- On a narrow screen the app name in the top bar is hidden to make room.
Measured on an API 34 emulator (no GPU)
- APK: 372 bytes larger than 0.1.0.
- Memory after a large document: up 0.04%.
Known gaps
- Checked on an emulator at three widths; the phone test is next.
- Images next to the Markdown file and links to other local Markdown files are not shown.
- This build is signed with a throwaway test key that changes every build: uninstall before installing a newer one.
Files
Each file has a .sha256 next to it. LeanMark-0.1.1.apk is the build to install.
LeanMark 0.1.0
LeanMark for Android, first pre-release. A read-only Markdown viewer that opens .md files from your file manager, email or browser, with GitHub-flavored Markdown and Mermaid diagrams, offline.
Not on Google Play yet. This build is for testing on a phone.
What works
- Open with: Markdown files from any app (view and share), plus an open button.
- The desktop reader and Markdown core, so documents look the same as in LeanMark on Windows, Linux and macOS.
- Themes: System, Light, Dark, Dim and Dusk.
- Find, section and whole-file copy, a diagram viewer, rotation keeps your place.
- No permissions and no network: nothing outside the reader's own files is loaded.
Measured on an API 34 emulator (no GPU)
- Download from Play to an arm64 phone: about 1.5 MB (2.3 MB installed).
- Start: 187 ms over an empty app to the first frame.
- Memory after a small document: about 114 MB including the WebView renderer.
The emulator has no GPU, so start time and scrolling still need a real phone; the steps are in PROGRESS.md under "Phone test".
Known gaps
- Images next to the Markdown file and links to other local Markdown files are not shown.
- On a phone the toolbar is wider than the screen, so the Open button is cut off at the right edge.
- WebView older than 105 shows no match count in Find; Mermaid needs WebView 94 or newer.
- This build is signed with a throwaway test key that changes every build: uninstall before installing a newer one.
Files
Each file has a .sha256 next to it. LeanMark-0.1.0.apk is the build to install and time; the debug APK, the empty app and the phone-test files are for the phone test.