diff --git a/aw-server/src/android/mod.rs b/aw-server/src/android/mod.rs index 3c32a13e..cb41c509 100644 --- a/aw-server/src/android/mod.rs +++ b/aw-server/src/android/mod.rs @@ -38,7 +38,6 @@ pub mod android { use std::path::PathBuf; use std::sync::Mutex; - use crate::config::AWConfig; use crate::endpoints; use crate::endpoints::ServerState; use aw_client_rust::blocking::AwClient; @@ -127,7 +126,7 @@ pub mod android { }; info!("Using server_state:: device_id: {}", server_state.device_id); - let mut server_config: AWConfig = AWConfig::default(); + let mut server_config = crate::config::create_config(false, None); server_config.port = 5600; endpoints::build_rocket(server_state, server_config) diff --git a/aw-server/src/device_id.rs b/aw-server/src/device_id.rs index 0f279097..2b024b1e 100644 --- a/aw-server/src/device_id.rs +++ b/aw-server/src/device_id.rs @@ -6,7 +6,7 @@ use crate::dirs; /// Retrieves the device ID, if none exists it generates one (using UUID v4) pub fn get_device_id() -> String { - // I chose get_data_dir over get_config_dir since the latter isn't yet supported on Android. + // Device IDs are mutable app data, so they live next to the datastore rather than config. let mut path = dirs::get_data_dir().unwrap(); path.push("device_id"); if path.exists() { diff --git a/aw-server/src/dirs.rs b/aw-server/src/dirs.rs index 0897dbf9..86bef315 100644 --- a/aw-server/src/dirs.rs +++ b/aw-server/src/dirs.rs @@ -25,7 +25,7 @@ pub fn get_config_dir() -> Result { #[cfg(target_os = "android")] pub fn get_config_dir() -> Result { - panic!("not implemented on Android"); + Ok(ANDROID_DATA_DIR.lock().unwrap().to_path_buf()) } #[cfg(not(target_os = "android"))]