Tauri 2.x 正式版 安卓应用创建、开发环境搭建体验

请添加图片描述

环境

windows 11
安装了Android Studio,并下载了NDK(开发需要配置)
Java环境变量配置的Java版本需要Java11及以上,在Android Studio里面下载一个高版本的JDK就行

运行环境:VSCode 1.95.2

项目开发环境全部信息pnpm tauri info

[✔] Environment
    - OS: Windows 10.0.22000 x86_64 (X64)
    ✔ WebView2: 126.0.2592.113
    ✔ MSVC: 
        - Visual Studio 15 生成工具 2017
        - Visual Studio Community 2022
    ✔ rustc: 1.82.0 (f6e511eec 2024-10-15)
    ✔ cargo: 1.82.0 (8f40fc59f 2024-08-21)
    ✔ rustup: 1.26.0 (5af9b9484 2023-04-05)
    ✔ Rust toolchain: stable-x86_64-pc-windows-msvc (default)
    - node: 16.17.0
    - pnpm: 8.11.0
    - yarn: 1.22.19
    - bun: 1.1.20

[-] Packages
    - tauri 🦀: 2.0.6
    - tauri-build 🦀: 2.0.2
    - wry 🦀: 0.46.3
    - tao 🦀: 0.30.6
    - @tauri-apps/api : 2.0.3 (outdated, latest: 2.1.1)
    - @tauri-apps/cli : 2.0.5 (outdated, latest: 2.1.0)

[-] Plugins
    - tauri-plugin-shell 🦀: 2.0.2
    - @tauri-apps/plugin-shell : 2.0.1

[-] App
    - build-type: bundle
    - CSP: unset
    - frontendDist: ../dist
    - devUrl: http://localhost:1420/
    - framework: Vue.js
    - bundler: Vite

基本条件

1、安装Tauri开发需要的Rust环境;
2、开发运行安卓应用需要有Java环境,建议java11以上,不然会有兼容报错,因为Tauri2.x默认的gradle版本是gradle-8.9-bin.zip。gradle自动下载很慢,建议手动下载,附上国内快速下载地址,有需要的可以自行下载,点击下载 gradle-8.9-bin.zip
3、windows设备需要添加环境变量NDK_HOME【NDK目录】和ANDROID_HOME【安卓SDK目录】

1、创建项目

运行pnpm create tauri-app,然后根据选项选择你喜欢的技术栈,之后等待创建完成

注意事项:创建项目设置app的identifier时,不要用大写,且最好使用小写字母以xxx.xxx.xxx格式,否则在初始化安卓工程的时候会因为identifier问题不通过,会报错

error: custom attribute panicked --> src\lib.rs:7:20 | 7 | #[cfg_attr(mobile, tauri::mobile_entry_point)]
如果不小心错误设置了,在下图位置修改就行了,修改之后重新 pnpm tauri android init初始化安卓工程代码,
在这里插入图片描述

2、初始化项目和环境

执行命令 pnpm install pnpm tauri android init

3、运行项目

执行命令pnpm tauri android dev

注意:需要先有安卓模拟器在电脑上运行,或者有真机使用USB线连上电脑并打开了开发者模式,才能进行安卓调试

不得不说,开发调试的时候,热更新是真的快

3、打包项目

执行命令pnpm tauri android build
打包结果位置,打包出来的apk默认是没有签名的,需要打个签名才能安装到设备上去
在这里插入图片描述

最后

打包结果来看,一个初始化的Tauri 安卓端app打包出来:APK文件大小为37.1MB,安装完成之后内存占用四十多MB,开发调试时的debug程序会占用一百多MB的内存,应用启动运行也顺畅快速;
在开发体验来看,初用起来确实比安卓原生开发的时候更丝滑,毕竟是写web页面,也简单很多,很友好,底层api的使用需要进一步探索

欢迎大家讨论,一起学习
Java实现Redis分布式锁可以通过使用Redis的SETNX命令来实现。SETNX命令可以在Redis中设置一个键值对,但只有在键不存在的情况下才会设置成功。因此,可以将某个键作为锁的标识,当某个线程成功执行SETNX命令并获得锁时,其他线程执行SETNX命令时会失败,从而实现分布式锁的效果。在释放锁时,可以使用Redis的DEL命令来删除对应的键。 另外,Java中也可以使用显式锁(Lock)来实现分布式锁。通过使用ReentrantLock类,可以在代码中显式地加锁和解锁。在同一个线程中,当外层方法获取锁后,再进入内层方法时会自动获取锁,不会因为之前已经获取过锁而阻塞。这种可重入锁的特性可以一定程度上避免死锁的发生。 总结起来,Java实现Redis分布式锁可以通过使用Redis的SETNX命令或者使用显式锁(Lock)来实现。具体的实现方式可以根据实际需求和场景选择。\[2\]\[3\] #### 引用[.reference_title] - *1* *3* [Java --- redis7实现分布式锁](https://blog.csdn.net/qq_46093575/article/details/130661856)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [Redis分布式锁的正确实现方式(Java版)](https://blog.csdn.net/zth_killer/article/details/106853052)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值