Using Tauri 2, Svelte 5, SvelteKit, TypeScript, Vite and Bun.
VS Code + Svelte + Tauri + rust-analyzer.
https://tauri.app/start/prerequisites/
(outdated, ignore)
sudo apt install libcrypto++-dev libssl-dev libasound2-dev
sudo apt install libwebkit2gtk-4.1-dev \
build-essential \
curl \
wget \
file \
libxdo-dev \
libssl-dev \
libayatana-appindicator3-dev \
librsvg2-dev
curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh
rustup target add aarch64-linux-android armv7-linux-androideabi i686-linux-android x86_64-linux-android
JAVA_HOME=/snap/android-studio/current/jbr/ CMAKE_MAKE_PROGRAM=/bin/make ANDROID_NDK_HOME=~/Android/Sdk/ndk/* NDK_HOME=~/Android/Sdk/ndk/* ANDROID_HOME=~/Android/Sdk/ bun run tauri android init
JAVA_HOME=/snap/android-studio/current/jbr/ CMAKE_MAKE_PROGRAM=/bin/make ANDROID_NDK_HOME=~/Android/Sdk/ndk/* NDK_HOME=~/Android/Sdk/ndk/* ANDROID_HOME=~/Android/Sdk/ bun run tauri android build --debug
Important: After running tauri android init
, you need to manually add file permissions to the generated AndroidManifest.xml:
Add these lines to src-tauri/gen/android/app/src/main/AndroidManifest.xml
after the existing <uses-permission>
tags:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
This enables native file saving functionality on Android devices.
start android dev:
... tauri android dev
start desktop dev:
bun tauri dev
Debug:
bun tauri build --debug
Release:
bun tauri build