anchor.diff:  import '../artifacts.dart';
   import '../base/file_system.dart';
   import '../base/logging.dart';
  +import '../base/process.dart';
   import '../build_configuration.dart';
   import '../device.dart';
   import '../runner/flutter_command.dart';
  
positive.code:     return (_androidJar.existsSync() && _aapt.existsSync() && _zipalign.existsSync());
    }
  
    void package(File outputApk, File androidManifest, Directory assets, Directory artifacts) {
      _run(_aapt.path, [
        'package',
        '-M', androidManifest.path,
        '-A', assets.path,
        '-I', _androidJar.path,
        '-F', outputApk.path,
        artifacts.path
      ]);
    }
  
    void sign(File keystore, String keystorePassword, String keyName, File outputApk) {
      _run(_jarsigner, [
        '-keystore', keystore.path,
        '-storepass', keystorePassword,
        outputApk.path,
  
negative.code:     components.classesDex = new File(artifactPaths[1]);
      components.libSkyShell = new File(artifactPaths[2]);
      components.keystore = new File(artifactPaths[3]);
      // TODO(eseidel): Should this be configurable from flutter.yaml?
      components.resources = new Directory('apk/res');
  
      if (!components.androidSdk.existsSync()) {
        logging.severe('Can not locate Android SDK: $androidSdkPath');
  