Log errors with adb (#3493)
Co-authored-by: fabian <fabian@staff.identeco.de>
This commit is contained in:
1 parent
19ca7075d6
commit
ea8fd16153
1 file changed
+12
-10
@@ -129,7 +129,7 @@ impl AppHandle {
|
|||||||
|
|
||||||
// https://developer.android.com/studio/run/emulator-commandline
|
// https://developer.android.com/studio/run/emulator-commandline
|
||||||
Platform::Android => {
|
Platform::Android => {
|
||||||
self.open_android_sim(envs).await?;
|
self.open_android_sim(envs).await;
|
||||||
None
|
None
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -494,7 +494,7 @@ impl AppHandle {
|
|||||||
unimplemented!("dioxus-cli doesn't support ios devices yet.")
|
unimplemented!("dioxus-cli doesn't support ios devices yet.")
|
||||||
}
|
}
|
||||||
|
|
||||||
async fn open_android_sim(&self, envs: Vec<(&'static str, String)>) -> Result<()> {
|
async fn open_android_sim(&self, envs: Vec<(&'static str, String)>) {
|
||||||
let apk_path = self.app.apk_path();
|
let apk_path = self.app.apk_path();
|
||||||
let full_mobile_app_name = self.app.build.krate.full_mobile_app_name();
|
let full_mobile_app_name = self.app.build.krate.full_mobile_app_name();
|
||||||
|
|
||||||
@@ -502,20 +502,23 @@ impl AppHandle {
|
|||||||
tokio::task::spawn(async move {
|
tokio::task::spawn(async move {
|
||||||
// Install
|
// Install
|
||||||
// adb install -r app-debug.apk
|
// adb install -r app-debug.apk
|
||||||
let _output = Command::new("adb")
|
if let Err(e) = Command::new("adb")
|
||||||
.arg("install")
|
.arg("install")
|
||||||
.arg("-r")
|
.arg("-r")
|
||||||
.arg(apk_path)
|
.arg(apk_path)
|
||||||
.stderr(Stdio::piped())
|
.stderr(Stdio::piped())
|
||||||
.stdout(Stdio::piped())
|
.stdout(Stdio::piped())
|
||||||
.output()
|
.output()
|
||||||
.await?;
|
.await
|
||||||
|
{
|
||||||
|
tracing::error!("Failed to install apk with `adb`: {e}");
|
||||||
|
};
|
||||||
|
|
||||||
// eventually, use the user's MainAcitivty, not our MainAcitivty
|
// eventually, use the user's MainAcitivty, not our MainAcitivty
|
||||||
// adb shell am start -n dev.dioxus.main/dev.dioxus.main.MainActivity
|
// adb shell am start -n dev.dioxus.main/dev.dioxus.main.MainActivity
|
||||||
let activity_name = format!("{}/dev.dioxus.main.MainActivity", full_mobile_app_name,);
|
let activity_name = format!("{}/dev.dioxus.main.MainActivity", full_mobile_app_name,);
|
||||||
|
|
||||||
let _output = Command::new("adb")
|
if let Err(e) = Command::new("adb")
|
||||||
.arg("shell")
|
.arg("shell")
|
||||||
.arg("am")
|
.arg("am")
|
||||||
.arg("start")
|
.arg("start")
|
||||||
@@ -525,11 +528,10 @@ impl AppHandle {
|
|||||||
.stderr(Stdio::piped())
|
.stderr(Stdio::piped())
|
||||||
.stdout(Stdio::piped())
|
.stdout(Stdio::piped())
|
||||||
.output()
|
.output()
|
||||||
.await?;
|
.await
|
||||||
|
{
|
||||||
Result::<()>::Ok(())
|
tracing::error!("Failed to start app with `adb`: {e}");
|
||||||
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
Ok(())
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in new issue
Block a user