title: flutter Invalid `Podfile` file: no implicit conversion of nil into String
body: <p>Dear mobile dev who can help me, I got this problem when I try to run <code>pod install</code>
  This is my podFile, Thanks</p>
  <pre><code># platform :ios, '9.0'
  
  # CocoaPods analytics sends network stats synchronously affecting flutter build latency.
  ENV['COCOAPODS_DISABLE_STATS'] = 'true'
  
  project 'Runner', {
    'Debug' =&gt; :debug,
    'Profile' =&gt; :release,
    'Release' =&gt; :release,
  }
  
  def parse_KV_file(file, separator='=')
    file_abs_path = File.expand_path(file)
    if !File.exists? file_abs_path
      return [];
    end
    generated_key_values = {}
    skip_line_start_symbols = [&quot;#&quot;, &quot;/&quot;]
    File.foreach(file_abs_path) do |line|
      next if skip_line_start_symbols.any? { |symbol| line =~ /^\s*#{symbol}/ }
      plugin = line.split(pattern=separator)
      if plugin.length == 2
        podname = plugin[0].strip()
        path = plugin[1].strip()
        podpath = File.expand_path(&quot;#{path}&quot;, file_abs_path)
        generated_key_values[podname] = podpath
      else
        puts &quot;Invalid plugin specification: #{line}&quot;
      end
    end
    generated_key_values
  end
  
  target 'Runner' do
    use_frameworks!
    use_modular_headers!
  
    # Flutter Pod
  
    copied_flutter_dir = File.join('.', 'Flutter')
    copied_framework_path = File.join(copied_flutter_dir, 'Flutter.framework')
    copied_podspec_path = File.join(copied_flutter_dir, 'Flutter.podspec')
    unless File.exist?(copied_framework_path) &amp;&amp; File.exist?(copied_podspec_path)
      # Copy Flutter.framework and Flutter.podspec to Flutter/ to have something to link against if the xcode backend script has not run yet.
      # That script will copy the correct debug/profile/release version of the framework based on the currently selected Xcode configuration.
      # CocoaPods will not embed the framework on pod install (before any build phases can generate) if the dylib does not exist.
  
      generated_xcode_build_settings_path = File.join(copied_flutter_dir, 'Generated.xcconfig')
      unless File.exist?(generated_xcode_build_settings_path)
        raise &quot;Generated.xcconfig must exist. If you're running pod install manually, make sure flutter pub get is executed first&quot;
      end
      generated_xcode_build_settings = parse_KV_file(generated_xcode_build_settings_path)
      cached_framework_dir = generated_xcode_build_settings['FLUTTER_FRAMEWORK_DIR'];
  
      unless File.exist?(copied_framework_path)
        FileUtils.cp_r(File.join(cached_framework_dir, 'Flutter.framework'), copied_flutter_dir)
      end
      unless File.exist?(copied_podspec_path)
        FileUtils.cp(File.join(cached_framework_dir, 'Flutter.podspec'), copied_flutter_dir)
      end
    end
  
    # Keep pod path relative so it can be checked into Podfile.lock.
    pod 'Flutter', :path =&gt; 'Flutter'
  
    # Plugin Pods
  
    # Prepare symlinks folder. We use symlinks to avoid having Podfile.lock
    # referring to absolute paths on developers' machines.
    system('rm -rf .symlinks')
    system('mkdir -p .symlinks/plugins')
    plugin_pods = parse_KV_file('../.flutter-plugins')
    plugin_pods.each do |name, path|
      symlink = File.join('.symlinks', 'plugins', name)
      File.symlink(path, symlink)
      pod name, :path =&gt; File.join(symlink, 'ios')
    end
  end
  
  # Prevent Cocoapods from embedding a second Flutter framework and causing an error with the new Xcode build system.
  install! 'cocoapods', :disable_input_output_paths =&gt; true
  
  post_install do |installer|
    installer.pods_project.targets.each do |target|
      target.build_configurations.each do |config|
        config.build_settings['ENABLE_BITCODE'] = 'NO'
      end
    end
  end
  
  # add the Firebase pod for Google Analytics
  pod 'Firebase/Analytics'
  pod 'Firebase/Core'
  pod 'Firebase/Functions'
  pod 'Firebase/Auth'
  pod 'Firebase/Database'
  pod 'Firebase/DynamicLinks'
  pod 'Firebase/Firestore'
  pod 'Firebase/RemoteConfig'
  pod 'FirebaseCore'
  
  # add pods for any other desired Firebase products
  # https://firebase.google.com/docs/ios/setup#available-pods
  </code></pre>
  <p>And this is error log:</p>
  <pre><code>mac@Macs-MacBook-Air ios % pod install
  
  [!] Invalid `Podfile` file: no implicit conversion of nil into String.
  
   #  from /Users/mac/Documents/cred_app/ios/Podfile:57
   #  -------------------------------------------
   #      unless File.exist?(copied_framework_path)
   &gt;        FileUtils.cp_r(File.join(cached_framework_dir, 'Flutter.framework'), File.join('.', 'Flutter'))
   #      end
   #  -------------------------------------------
  mac@Macs-MacBook-Air ios % 
  </code></pre>