ExoPlayer 2.18 sets up skipping silences when it opens the audio, so the engine now gets both settings before
prepare, and turning the option on or off while an episode plays reopens it at the same spot. Tested on the
Xperia J against test/mock_abs.py: 2x speed, silences skipped, the toggle mid-play, notification buttons.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- One build per Android level, as in Tenda and Plexamp Lite: build/Podlite.apk (Android 2.2+, versionCode 1308) and
build/Podlite-api16.apk (Android 4.1+, 1316), from shared src/ plus platform/api8 or platform/api16; build.sh now
runs on the local toolchain (aapt2, dx or R8, signapk.py; the JKS key converted for the run).
- Android 4.1 build: ExoPlayer 2.18.7 behind an Engine interface, with playback speed (player header) and skipping
silences (Settings), a 3-minute buffer and MediaPlayer as fallback for audio it can't decode; a notification and
lock screen with the cover and buttons; Holo; a menu button on phones without a Menu key; metered networks for
"download on Wi-Fi only".
- Both builds: tlskit's Http.abort fix (a finished response's pooled connection is no longer closed under a later
request); the lock screen's and newer headsets' play/pause keys.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Installed on the SD card, the app was killed whenever the card was shared over USB,
and a failed root read left HTTPS broken until a restart.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The purple came from the old Audiobookshelf icon. Accent and button gradient now take the radio's
brass and dial glow (#C27A1E, light #E8A64A, buttons #D98C2B to #A35F14), and the backgrounds,
lines and greys lose their purple tint for warm ones. The blue 'new episode' dot stays.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
New launcher icon (the Podcasts Radio pack, master in art/icon-master.png). The status-bar icon
was cut out of the old headphones artwork; make_icons.py now draws a white radio silhouette.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Renames the app (label, texts, Audiobookshelf client name, User-Agent, APK). The package name,
preferences and signing key stay, so it installs over MiniABS and keeps its settings.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Launcher icon from the Audiobookshelf icon pack (art/icon_master_512.png),
including an xhdpi size
- Notification icon cut out of the same artwork; player icons redrawn in the
icon's lilac (tools/make_icons.py)
- Purple colour scheme taken from the icon: gradient accent buttons, lilac
text accents (accent_light), purple-tinted backgrounds
- README: where the icon and colours come from
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Play/pause becomes a rounded rectangle (58x46dp) instead of a 78dp circle,
with 32dp icons and wider spacing (play_w/play_h/play_gap in dimens.xml)
- Skip buttons shrink from 82x56dp to 62x42dp, with 16sp text
- Version 1.4 (versionCode 5); there was no public 1.3
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Translate the interface to Galician (tools/translate_gl.py), including
Galician month abbreviations for dates, which Android 2.3 lacks
- Resize for the Galaxy Mini's 240x320 screen: larger text, rows, tabs and
buttons; all sizes now live in res/values/dimens.xml
- Redraw play/pause/refresh icons for every density; slightly brighter
secondary text colours
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Bundle current root certificates (Let's Encrypt, GTS, Sectigo, DigiCert G2,
Amazon, ...) missing from Android 2.x's store (Roots.java, tools/gen_roots.py)
- Ask once for unknown certificates, showing the SHA-256 fingerprint, and
remember the answer; replaces "accept any certificate" (Trust*, Settings)
- Local streaming proxy so Android 2.x's MediaPlayer can play https:// servers,
with seeking and a fresh token per request (StreamProxy.java)
- Tests over real TLS with good, expired, wrong-host, forged and self-signed
certificates (test/make_pki.sh, TrustTest.java)
- README: server setup for a legacy TLS 1.0 port
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>