anchor.diff:  
   
   
  -FlutterPluginVersion get flutterPluginVersion {
  -  final File plugin = fs.file('android/buildSrc/src/main/groovy/FlutterPlugin.groovy');
  +FlutterPluginVersion getFlutterPluginVersion(AndroidProject project) {
  +  final File plugin = project.directory.childFile(
  +      fs.path.join('buildSrc', 'src', 'main', 'groovy', 'FlutterPlugin.groovy'));
     if (plugin.existsSync()) {
       final String packageLine = plugin.readAsLinesSync().skip(4).first;
       if (packageLine == 'package io.flutter.gradle') {
  
positive.code: // Note: Dependencies are resolved and possibly downloaded as a side-effect
  // of calculating the app properties using Gradle. This may take minutes.
  Future<GradleProject> _readGradleProject() async {
    final String gradle = await _ensureGradle();
    final FlutterProject flutterProject =  new FlutterProject(fs.currentDirectory);
    await updateLocalProperties(project: flutterProject);
    try {
      final Status status = logger.startProgress('Resolving dependencies...', expectSlowOperation: true);
  
negative.code:     case FlutterPluginVersion.managed:
        // Fall through. Managed plugin builds the same way as plugin v2.
      case FlutterPluginVersion.v2:
        return _buildGradleProjectV2(project, gradle, buildInfo, target);
    }
  }
  
  