diff --git a/core/tauri-macros/src/mobile.rs b/core/tauri-macros/src/mobile.rs index ca593ea3b..99d4efdb0 100644 --- a/core/tauri-macros/src/mobile.rs +++ b/core/tauri-macros/src/mobile.rs @@ -43,6 +43,7 @@ pub fn entry_point(_attributes: TokenStream, item: TokenStream) -> TokenStream { &mut error, &function, ); + let app_name_str = var("CARGO_PKG_NAME").unwrap(); if let Some(e) = error { quote!(#e).into() @@ -61,6 +62,7 @@ pub fn entry_point(_attributes: TokenStream, item: TokenStream) -> TokenStream { #function fn _start_app() { + ::tauri::init_logging(#app_name_str); #[cfg(target_os = "android")] { use ::tauri::paste; diff --git a/core/tauri/Cargo.toml b/core/tauri/Cargo.toml index b23e4f1d2..5c110aa30 100644 --- a/core/tauri/Cargo.toml +++ b/core/tauri/Cargo.toml @@ -106,6 +106,11 @@ win7-notifications = { version = "0.3.1", optional = true } [target.'cfg(target_os = "android")'.dependencies] paste = "1.0" +android_logger = "0.9" +log = "0.4" + +[target.'cfg(target_os = "ios")'.dependencies] +env_logger = "0.9.0" [target."cfg(windows)".dependencies.windows] version = "0.39.0" diff --git a/core/tauri/src/lib.rs b/core/tauri/src/lib.rs index 2ceeca538..639f17250 100644 --- a/core/tauri/src/lib.rs +++ b/core/tauri/src/lib.rs @@ -277,6 +277,22 @@ pub use self::runtime::ClipboardManager; #[cfg_attr(doc_cfg, doc(cfg(feature = "global-shortcut")))] pub use self::runtime::GlobalShortcutManager; +#[cfg(target_os = "android")] +#[doc(hidden)] +pub fn init_logging(tag: &str) { + android_logger::init_once( + android_logger::Config::default() + .with_min_level(log::Level::Trace) + .with_tag(tag), + ); +} + +#[cfg(target_os = "ios")] +#[doc(hidden)] +pub fn init_logging(_tag: &str) { + env_logger::init(); +} + /// Updater events. #[cfg(updater)] #[cfg_attr(doc_cfg, doc(cfg(feature = "updater")))] diff --git a/examples/api/src-tauri/Cargo.lock b/examples/api/src-tauri/Cargo.lock index 53e65cbb8..4f89159f5 100644 --- a/examples/api/src-tauri/Cargo.lock +++ b/examples/api/src-tauri/Cargo.lock @@ -101,8 +101,6 @@ checksum = "216261ddc8289130e551ddcd5ce8a064710c0d064a4d2895c67151c92b5443f6" name = "api" version = "0.1.0" dependencies = [ - "android_logger", - "env_logger 0.9.3", "log", "serde", "serde_json", @@ -145,9 +143,9 @@ dependencies = [ [[package]] name = "attohttpc" -version = "0.22.0" +version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fcf00bc6d5abb29b5f97e3c61a90b6d3caa12f3faf897d4a3e3607c050a35a7" +checksum = "b85f766c20e6ae766956f7a2fcc4e0931e79a7e1f48b29132b5d647021114914" dependencies = [ "flate2", "http", @@ -3010,6 +3008,7 @@ dependencies = [ name = "tauri" version = "1.2.0" dependencies = [ + "android_logger", "anyhow", "attohttpc", "base64", @@ -3019,6 +3018,7 @@ dependencies = [ "dirs-next", "embed_plist", "encoding_rs", + "env_logger 0.9.3", "flate2", "futures-util", "glib", @@ -3029,6 +3029,7 @@ dependencies = [ "ico", "ignore", "infer 0.9.0", + "log", "minisign-verify", "notify-rust", "objc", diff --git a/examples/api/src-tauri/Cargo.toml b/examples/api/src-tauri/Cargo.toml index 5deaab6e6..4f936ca83 100644 --- a/examples/api/src-tauri/Cargo.toml +++ b/examples/api/src-tauri/Cargo.toml @@ -38,15 +38,6 @@ features = [ window-vibrancy = "0.2" window-shadows= "0.2" -[target.'cfg(any(target_os = "android", target_os = "ios"))'.dependencies] -log = "0.4" - -[target.'cfg(target_os = "android")'.dependencies] -android_logger = "0.9.0" - -[target.'cfg(target_os = "ios")'.dependencies] -env_logger = "0.9.0" - [features] default = [ "custom-protocol" ] custom-protocol = [ "tauri/custom-protocol" ] diff --git a/examples/api/src-tauri/src/mobile.rs b/examples/api/src-tauri/src/mobile.rs index 958fadd2d..ffb9ab030 100644 --- a/examples/api/src-tauri/src/mobile.rs +++ b/examples/api/src-tauri/src/mobile.rs @@ -1,23 +1,4 @@ -#[cfg(target_os = "android")] -fn init_logging(app_name: &str) { - android_logger::init_once( - android_logger::Config::default() - .with_min_level(log::Level::Trace) - .with_tag(app_name), - ); -} - -#[cfg(not(target_os = "android"))] -fn init_logging(_app_name: &str) { - env_logger::init(); -} - #[tauri::mobile_entry_point] fn main() { - super::AppBuilder::new() - .setup(|app| { - init_logging(&app.package_info().name); - Ok(()) - }) - .run(); + super::AppBuilder::new().run(); } diff --git a/tooling/cli/Cargo.lock b/tooling/cli/Cargo.lock index 265b0fe21..175bff3ce 100644 --- a/tooling/cli/Cargo.lock +++ b/tooling/cli/Cargo.lock @@ -378,7 +378,7 @@ dependencies = [ [[package]] name = "cargo-mobile" version = "0.1.0" -source = "git+https://github.com/tauri-apps/cargo-mobile?branch=dev#068cda074b0ff0c42f8d5297d8a2d5c29fd75c03" +source = "git+https://github.com/tauri-apps/cargo-mobile?branch=dev#51d0e9a6c9b37e3287ebd5210d28798c534cb971" dependencies = [ "cocoa", "colored 1.9.3", diff --git a/tooling/cli/src/mobile/android.rs b/tooling/cli/src/mobile/android.rs index 68170d7ff..d603327f2 100644 --- a/tooling/cli/src/mobile/android.rs +++ b/tooling/cli/src/mobile/android.rs @@ -95,6 +95,7 @@ pub fn get_config( let raw = RawAndroidConfig { features: android_options.features.clone(), + logcat_filter_specs: vec!["RustStdoutStderr".into()], ..Default::default() }; let config = AndroidConfig::from_raw(app.clone(), Some(raw)).unwrap(); diff --git a/tooling/cli/src/mobile/android/dev.rs b/tooling/cli/src/mobile/android/dev.rs index 083a81445..e963b68eb 100644 --- a/tooling/cli/src/mobile/android/dev.rs +++ b/tooling/cli/src/mobile/android/dev.rs @@ -16,7 +16,7 @@ use cargo_mobile::{ env::Env, }, config::app::App, - opts::{NoiseLevel, Profile}, + opts::{FilterLevel, NoiseLevel, Profile}, }; use std::env::set_var; @@ -189,7 +189,11 @@ fn run( env, noise_level, profile, - None, + Some(match noise_level { + NoiseLevel::Polite => FilterLevel::Info, + NoiseLevel::LoudAndProud => FilterLevel::Debug, + NoiseLevel::FranklyQuitePedantic => FilterLevel::Verbose, + }), build_app_bundle, false, ".MainActivity".into(), diff --git a/tooling/cli/templates/app/src-tauri/Cargo.crate-manifest b/tooling/cli/templates/app/src-tauri/Cargo.crate-manifest index 53a184ba7..8ff358f73 100755 --- a/tooling/cli/templates/app/src-tauri/Cargo.crate-manifest +++ b/tooling/cli/templates/app/src-tauri/Cargo.crate-manifest @@ -21,15 +21,6 @@ serde_json = "1.0" serde = { version = "1.0", features = ["derive"] } tauri = {{{ tauri_dep }}} -[target.'cfg(any(target_os = "android", target_os = "ios"))'.dependencies] -log = "0.4" - -[target.'cfg(target_os = "android")'.dependencies] -android_logger = "0.9.0" - -[target.'cfg(target_os = "ios")'.dependencies] -env_logger = "0.9.0" - [features] # by default Tauri runs in production mode # when `tauri dev` runs it is executed with `cargo run --no-default-features` if `devPath` is an URL diff --git a/tooling/cli/templates/app/src-tauri/src/mobile.rs b/tooling/cli/templates/app/src-tauri/src/mobile.rs index 3e22469b2..cacaf5f11 100644 --- a/tooling/cli/templates/app/src-tauri/src/mobile.rs +++ b/tooling/cli/templates/app/src-tauri/src/mobile.rs @@ -1,23 +1,4 @@ -#[cfg(target_os = "android")] -fn init_logging(app_name: &str) { - android_logger::init_once( - android_logger::Config::default() - .with_min_level(log::Level::Trace) - .with_tag(app_name), - ); -} - -#[cfg(not(target_os = "android"))] -fn init_logging(_app_name: &str) { - env_logger::init(); -} - #[tauri::mobile_entry_point] fn main() { - super::AppBuilder::new() - .setup(|app| { - init_logging(&app.package_info().name); - Ok(()) - }) - .run() + super::AppBuilder::new().run() }