diff --git a/packages/flutter_tools/lib/src/android/android_device.dart b/packages/flutter_tools/lib/src/android/android_device.dart index 44af4de7db..6175d96686 100644 --- a/packages/flutter_tools/lib/src/android/android_device.dart +++ b/packages/flutter_tools/lib/src/android/android_device.dart @@ -243,8 +243,13 @@ class AndroidDevice extends Device { @override Future isAppInstalled(ApplicationPackage app) async { // This call takes 400ms - 600ms. - final RunResult listOut = await runCheckedAsync(adbCommandForDevice(['shell', 'pm', 'list', 'packages', app.id])); - return LineSplitter.split(listOut.stdout).contains("package:${app.id}"); + try { + final RunResult listOut = await runCheckedAsync(adbCommandForDevice(['shell', 'pm', 'list', 'packages', app.id])); + return LineSplitter.split(listOut.stdout).contains('package:${app.id}'); + } catch (error) { + printTrace('$error'); + return false; + } } @override diff --git a/packages/flutter_tools/lib/src/base/process.dart b/packages/flutter_tools/lib/src/base/process.dart index 2c65f6d30f..fb915856c0 100644 --- a/packages/flutter_tools/lib/src/base/process.dart +++ b/packages/flutter_tools/lib/src/base/process.dart @@ -211,7 +211,7 @@ Future runCheckedAsync(List cmd, { environment: environment ); if (result.exitCode != 0) - throw 'Exit code ${result.exitCode} from: ${cmd.join(' ')}'; + throw 'Exit code ${result.exitCode} from: ${cmd.join(' ')}:\n$result'; return result; }