Tauri Wry项目移动端开发环境搭建指南
wry Cross-platform WebView library in Rust for Tauri. 项目地址: https://gitcode.com/gh_mirrors/wr/wry
前言
Tauri Wry是一个强大的跨平台WebView渲染引擎,支持在移动设备上构建原生应用。本文将详细介绍如何为Wry项目搭建完整的移动端开发环境,涵盖Android和iOS两大平台。
环境准备
系统要求
- 支持的操作系统:Linux、Windows、macOS以及WSL(Windows子系统)
- 必须安装的开发工具:
- Xcode (macOS用户)
- Android Studio (所有平台)
注意:Android开发环境的配置是整个过程中最具挑战性的部分,需要确保所有工具链和SDK都正确安装。
Android环境配置
1. JDK安装
通过Android Studio安装
Android Studio自带JDK,位于以下路径:
- macOS:
/Applications/Android Studio.app/Contents/jbr/Contents/Home
- Windows:
C:\Program Files\Android\Android Studio\jre
手动安装方法
Linux/WSL系统:
# Debian系
sudo apt install default-jdk
# Arch系
sudo pacman -S jdk-openjdk
# 设置环境变量
export JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"
macOS系统:
brew install openjdk
sudo ln -sfn /opt/homebrew/opt/openjdk/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk.jdk
export JAVA_HOME="/Library/Java/JavaVirtualMachines/openjdk.jdk/Contents/Home"
Windows系统:
# 下载并安装OpenJDK
Invoke-WebRequest https://download.java.net/java/GA/jdk11/9/GPL/openjdk-11.0.2_windows-x64_bin.zip -o openjdk-11.zip
Expand-Archive openjdk-11.zip -d .
mkdir $env:LocalAppData\Java
mv jdk-11.0.2 $env:LocalAppData\Java
$env:JAVA_HOME="$env:LocalAppData\Java\jdk-11.0.2"
2. Android SDK和NDK安装
使用Android Studio安装
通过SDK Manager安装以下组件:
- Android Sdk Platform 33
- Android SDK Platform-Tools
- NDK (Side by side) 25.0.8775105
- Android SDK Build-Tools 33.0.0
- Android SDK Command-line Tools
命令行安装
Linux/WSL/macOS:
wget https://dl.google.com/android/repository/commandlinetools-linux-8512546_latest.zip
unzip cmdline-tools.zip
mkdir -p ~/.android/cmdline-tools/latest
mv cmdline-tools/* ~/.android/cmdline-tools/latest/
# 安装必要组件
export ANDROID_HOME="$HOME/.android"
~/.android/cmdline-tools/latest/bin/sdkmanager "platforms;android-33" "platform-tools" "ndk;25.0.8775105" "build-tools;33.0.0"
Windows:
Invoke-WebRequest https://dl.google.com/android/repository/commandlinetools-win-8512546_latest.zip -o cmdline-tools.zip
Expand-Archive cmdline-tools.zip -d .
mkdir $HOME\.android\cmdline-tools\latest
mv cmdline-tools/* $HOME\.android\cmdline-tools\latest/
# 安装必要组件
$env:ANDROID_HOME="$HOME\.android"
&"$env:ANDROID_HOME\cmdline-tools\latest\bin\sdkmanager.exe" "platforms;android-33" "platform-tools" "ndk;25.0.8775105" "build-tools;33.0.0"
3. 环境变量配置
Linux/WSL/macOS:
# 添加到.bashrc或.zshrc
export JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"
export ANDROID_HOME="$HOME/.android"
export NDK_HOME="$ANDROID_HOME/ndk/25.0.8775105"
export PATH="$PATH:$ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/platform-tools"
Windows:
[System.Environment]::SetEnvironmentVariable("JAVA_HOME", "$env:LocalAppData\Java\jdk-11.0.2", "User")
[System.Environment]::SetEnvironmentVariable("ANDROID_HOME", "$HOME\.android", "User")
[System.Environment]::SetEnvironmentVariable("NDK_HOME", "$env:ANDROID_HOME\ndk\25.0.8775105", "User")
$env:Path += ";$env:ANDROID_HOME\cmdline-tools\latest\bin;$env:ANDROID_HOME\platform-tools"
4. 添加Rust Android目标
rustup target add aarch64-linux-android armv7-linux-androideabi i686-linux-android x86_64-linux-android
iOS环境配置
基本要求
- 必须使用macOS系统
- 安装最新版Xcode
- 确保命令行工具已安装:
xcode-select --install
Rust iOS目标
rustup target add aarch64-apple-ios x86_64-apple-ios aarch64-apple-ios-sim
项目初始化
-
安装cargo-mobile工具:
cargo install cargo-mobile2
-
创建并初始化项目:
mkdir my_project && cd my_project cargo mobile init # 选择wry模板(选项4)
构建与运行
Android设备运行
cargo android run
iOS设备运行
cargo build --target aarch64-apple-ios
cargo apple run
首次运行时需要在设备上信任开发者证书: 设置 > 隐私与安全 > 开发者模式 > 启用
模拟器使用
Android模拟器
通过命令行启动:
$ANDROID_HOME/emulator/emulator -list-avds # 列出可用模拟器
$ANDROID_HOME/emulator/emulator -avd 模拟器名称 # 启动模拟器
cargo android run # 在另一个终端运行
iOS模拟器
cargo build --target aarch64-apple-ios-sim # M1芯片
# 或
cargo build --target x86_64-apple-ios # Intel芯片
cargo apple open # 在Xcode中运行模拟器
开发工具调试
Android调试
在Chrome浏览器中打开: chrome://inspect/#devices
iOS调试
在Safari中: 开发 > [设备名称] > [WebView名称]
常见问题解决
-
设备支持x86但APK只支持armeabi-v7a:
- 解决方案:在Android Studio中创建匹配的模拟器,或修改构建配置支持x86架构
-
WSL连接Windows模拟器:
export WSL_HOST="Windows IP地址" export ADB_SERVER_SOCKET=tcp:$WSL_HOST:5037
-
环境变量不生效:
- Windows需要重启
- Linux/macOS执行
source ~/.bashrc
或重新打开终端
通过以上步骤,您应该已经成功搭建了Tauri Wry项目的移动端开发环境。接下来可以开始开发跨平台的移动应用了!
wry Cross-platform WebView library in Rust for Tauri. 项目地址: https://gitcode.com/gh_mirrors/wr/wry
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考