mirror of
https://github.com/tauri-apps/plugins-workspace.git
synced 2026-06-06 13:53:54 +02:00
chore(deps): tauri 2.0.0-rc.3 (#1671)
* chore(deps): tauri 2.0.0-rc.3 * fix builds * fix deep link [skip ci]
This commit is contained in:
committed by
GitHub
parent
4dd7f5ddd8
commit
5d170a5444
@@ -24,24 +24,28 @@ fn init_deep_link<R: Runtime, C: DeserializeOwned>(
|
||||
#[cfg(target_os = "android")]
|
||||
{
|
||||
use tauri::{
|
||||
ipc::{Channel, InvokeBody},
|
||||
ipc::{Channel, InvokeResponseBody},
|
||||
Emitter,
|
||||
};
|
||||
|
||||
let handle = _api.register_android_plugin(PLUGIN_IDENTIFIER, "DeepLinkPlugin")?;
|
||||
|
||||
#[derive(serde::Deserialize)]
|
||||
struct Event {
|
||||
url: String,
|
||||
}
|
||||
|
||||
let app_handle = app.clone();
|
||||
handle.run_mobile_plugin::<()>(
|
||||
"setEventHandler",
|
||||
imp::EventHandler {
|
||||
handler: Channel::new(move |event| {
|
||||
println!("got channel event: {:?}", &event);
|
||||
|
||||
let url = match event {
|
||||
InvokeBody::Json(payload) => payload
|
||||
.get("url")
|
||||
.and_then(|v| v.as_str())
|
||||
.map(|s| s.to_owned()),
|
||||
InvokeResponseBody::Json(payload) => {
|
||||
serde_json::from_str::<Event>(&payload)
|
||||
.ok()
|
||||
.map(|payload| payload.url)
|
||||
}
|
||||
_ => None,
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user