I recently completed a small native Android TOTP authenticator. It has the following features:

It manages multiple accounts and supports importing them from a secret, an otpauth:// URI, or a QR code.

It supports SHA-1, SHA-256, SHA-512, six- and eight-digit codes, and configurable periods.

It uses Room, Android Keystore, and AndroidX Biometric for local persistence, secret protection, and app locking.

The final product is a signed APK distributed through GitHub Releases.