69

When I build the app in Xcode it throws the error: .../ios/Runner/GeneratedPluginRegistrant.m:10:9: Module 'audioplayers' not found I tried reinstalling and setting up pods again, however it didn't work. I am also including pod 'Firebase/Core' in the pod file. Maybe I need to include the Audioplayer module there as well? Thanks in advance!

Silent Tree
  • 987
  • 1
  • 7
  • 16
  • 1
    you can also check this answer just in case if it's not resolved https://stackoverflow.com/a/75798754/2850120 In my case, I was opening ios/Runner.xcodeproj instead of ios/Runner.xcworkspace – Rishabh Agrawal Mar 21 '23 at 08:21

28 Answers28

144

Make sure platform: iOS version in pod file matches with deployment info in Xcode

enter image description here

thanhbinh84
  • 17,876
  • 6
  • 62
  • 69
  • 12
    Thanks! This fixed the issue for me. I had XCode Build Settings on Runner project as follows: Project Runner -> Build Settings -> Deployment -> iOS Deployment Target: iOS 9.0 My podfile said: platform :ios, '13.0' I changed my XCode build settings to 13.0 and ran `flutter build ipa` and it worked. – Ijonas Sep 15 '21 at 08:52
  • I tried changing this, but nothing would work. In the end, what worked was deleting and re-creating the entire ios folder, and then setting the above value to 9.0 – shawnblais Dec 24 '21 at 08:11
  • Thanks, this solved for me. Had to flutter clean, remove Pods and Podfile and run pod install after changing the version in Xcode and in the Podfile. – Jorge Ferrari Oct 04 '22 at 13:36
80

Did you make sure that you started xcode by double clicking the "runner.xcworkspace" from your "project/ios" folder and not "runner.xcodeproj"?

According to this source, it solves the "missing module" issue for a lot of people (As it did for me). https://github.com/flutter/flutter/issues/41033

Salatgurke
  • 1,554
  • 1
  • 13
  • 35
25
  1. Delete Podfile
  2. flutter clean
  3. flutter pub get
  4. flutter build ios

It works for me!

padaleiana
  • 955
  • 1
  • 14
  • 23
19

Make sure that the selected scheme to run is "debug"

  • Click "Runner" which is just near the simulator dropdown.
  • Edit scheme.
  • Select "Run" at the left list.
  • Select "Debug" for "Build Configuration"
Thafer Shahin
  • 814
  • 9
  • 10
15

I got same error with Better Video Player. Make sure your IOS Version in Pod File is 11. 1st make sure you are opening runner.xcworkspace If issue is still present then try this step.

1.- flutter clean
2.- flutter pub get
3.- cd ios
4.- pod deintegrate
5.- pod install

If issue is still present then

post_install do |installer|
  installer.pods_project.targets.each do |target|
    flutter_additional_ios_build_settings(target)
    target.build_configurations.each do |config|
      config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '11.0'
    end
  end
end
Shailendra Rajput
  • 2,131
  • 17
  • 26
  • I think the problem is about having a lot of libraries of different targets (lower than the one defined as the target for the project). Doing this: config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '[same target defined in podfile and xcode]' is the key. Thanks for helping us. – Cícero Moura Mar 04 '22 at 19:21
14

Have tried many things, flutter clean, revert the Podfile and etc, still facing the same issue.

Eventually get this fix by solving the issue highlighted in Xcode. You can check

https://github.com/flutter/flutter/issues/54599#issuecomment-644336055 https://github.com/flutter/flutter/issues/53573#issuecomment-749912604

ITW
  • 432
  • 5
  • 12
7

For me (Mac w/ M1) I ran the following:

  1. flutter pub get
  2. cd ios
  3. rm -rf Pods/ Podfile.lock
  4. pod install

After this, running application within xcode worked as expected.

thisiskelvin
  • 4,136
  • 1
  • 10
  • 17
6

On mac with m1

1.- Delete Podfile

In Android Studio:

2.- flutter clean
3.- flutter pub get
4.- cd ios
5.- pod install

An then

6.- Build and run your app through Xcode

this worked for me.

Christian
  • 2,094
  • 1
  • 12
  • 12
5

I had a similar issue with the following compiler output:

/Users/me/flutter_project/ios/Runner/GeneratedPluginRegistrant.m:10:9: fatal error: module 'barcode_scan' not found
    @import barcode_scan;
     ~~~~~~~^~~~~~~~~~~~

My project contains multiple build environments with Flutter flavors as described here: https://medium.com/@thomasgallinari/e7a0c973f54e

What solved the issue for me is changing the casing of the build configurations and the corresponding files from values like Debug-stage to Debug-Stage as the latter is expected by Flutter.

  • 2
    This worked for me. I had this same issue with amplify_flutter, built and ran fine from xcode but wouldn't run debug builds from flutter command line (`flutter run --flavor dev`). Saved my sanity, thank you! – Bulwinkel Apr 05 '21 at 03:15
5

If you run the program through Xcode, make sure that you have opened the Runner.xcworkspace file in XCode, not the Runner.xcodeproj file

Ahmadshoh
  • 69
  • 1
  • 6
5

Try this simple steps it worked for me

  1. Delete pod directory and podfile.lock

  2. flutter clean

  3. flutter pub get

  4. cd ios

  5. pod install --repo-update

  6. run the application in Xcode

TusifuEdison
  • 71
  • 1
  • 3
4

Nothing worked in my case. I was able to run the project from VSCode but I couldn't archive on XCode. I've solved via choosing the scheme.

Yes, scheme. This project have 3 different flutter flavors, a.k.a iOS schemes. I realized I can't even list the devices or simulators for this project. Issue was, I didn't choose the scheme instead of it was on default one, Runner.

By nothing, I mean everything. I've deleted podfile, podfile.lock, I've changed deployment targets, I've deleted pods folder, I've added post scripts to update dependencies to 9.0, I've tried flutter clean and pod install --repo-update.

Issue simply was not choosing the right scheme.

mirkancal
  • 4,762
  • 7
  • 37
  • 75
  • This was my issue. though i follow the process like delete pod > flutter pub get > cd ios > pod install Then In XCode > clean build > Select RIght Build Flavor (Production For Me) > then Archive. – Shihab Uddin Oct 28 '21 at 16:50
  • 1
    I cannot belive it. I did all the things, I've deleted podfile, podfile.lock, I've changed deployment targets, I've deleted pods folder and so on. I just had to go to Product > Scheme > Edit Schema (2x) > Change Build Configuration to Debug – Cyrill Sep 02 '23 at 03:27
3

Hello if you try all the ways above and can't solve your problem you can check. on your Scheme -> Edit Scheme... -> Build Configuration

In Build Configuration select box => check your config name is the right config you have. In some cases it's missing the "-" character and you need choose the right config.

Then close and rebuild your project.

tuanngocptn
  • 1,241
  • 13
  • 21
2

Delete podfile & podfile.lock & pods folder & .symlinks folder and than flutter clean and pubget and run again

It works for me.

Hassan Gujjar
  • 288
  • 3
  • 13
2

In my case, I missed changing the scheme configuration (for the build, run, test, profile, archive) to the prod after adding flavors (they were set up to old configurations)

My lord
  • 21
  • 3
  • 1
    Your answer could be improved with additional supporting information. Please [edit] to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers [in the help center](/help/how-to-answer). – Community Nov 24 '21 at 01:22
2

I have tried many things like delete the pod file and podfile.lock, flutter clean, reinstall cocoa pods, changing scheme, but nothing worked for me until I tried to change different version numbers (Ex: 8, 9 etc.) And finally when I changed from 8 to 10 (platform :ios, '10.0') in Pod file it worked. I think some libraries are not supporting some platform versions. For my project 10th worked. If you have the same problem try to change different platform :ios versions in podfile one by one, hope this will help.

NOTE: The platform :ios version in podfile should be same with the IOS Deployment Target in XCode -> Project Runner under Info tab otherwise it fails

Rock
  • 511
  • 2
  • 7
  • 18
2

If you tried everything but error still appears, make sure that your path to project doesn't contains whitespaces. Sometimes Xcode can't deal with it. And make sure that you have the latest Xcode and MacOS version.

1

go ios folder "cd ios" and run "pod install" and run again

Eray Hamurlu
  • 657
  • 7
  • 9
1

That can happen if you use M1 Chip Mac and using older flutter versions, i had to install all pods using Rosetta. Go to terminal -> right click -> info -> use Rosetta.

grisVladko
  • 161
  • 2
  • 10
1

For me, I had the same issue for different packages, it got resolved after changed the debug device to my real iPhone instead of the simulator.

1

in my case, it was an issue with the firebase, firestore document. just make sure to update all libraries, like firebasecore, firebaseauth, analytics, etc to the latest version.

why it is showing the error of audioplayers?

because it is stated at the first position among all libraries.

means there is no issue at my side for audioplayer. after updating all libraries I just install the app.

if you still face a problem make sure to flutter clean then pod install. then run the app.

yes sometimes codes run on android but not run on ios. for that you have to update the libraries.

Muhammad Arslan
  • 939
  • 8
  • 13
1

Make sure that ios version on podfile and development info be same

Paras Rai
  • 122
  • 1
  • 6
1

in my case the Pods not downloaded, because of Cocoapods version is not suitable (i am using apple silicon but using arm Pods). Reinstall Pods and using the proper version.

First open terminal and do this

sudo arch -x86_64 gem install ffi

then move into folder IOS folder and run this

arch -x86_64 pod install
Tri yulianto
  • 323
  • 2
  • 7
1

I also ran into this problem when launching the app with the simulators. After trying all above methods, it is still not fixed. I used the cable and run the app with my phone. And it worked like a charm. I hope this helps.

Dales Vu
  • 169
  • 2
  • 15
1

Make sure you open Runner.xcodeproj and not Runner.xcworkspace when using Xcode

stan
  • 229
  • 3
  • 10
1

You need to change the podfile to this, someone above also said to change the podfile.

ENV['COCOAPODS_DISABLE_STATS'] = 'true'
platform :ios, '9.0'
project 'Runner', {
  'Debug' => :debug,
  'Profile' => :release,
  'Release' => :release,
}

def flutter_root
  generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__)
  unless File.exist?(generated_xcode_build_settings_path)
    raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first"
  end

  File.foreach(generated_xcode_build_settings_path) do |line|
    matches = line.match(/FLUTTER_ROOT\=(.*)/)
    return matches[1].strip if matches
  end
  raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get"
end

require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root)

flutter_ios_podfile_setup

target 'Runner' do
  flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
end

post_install do |installer|
  installer.pods_project.targets.each do |target|
    flutter_additional_ios_build_settings(target)
  end
end

Hopefully this will solve the module_not_found issue on Xcode, It worked for me and I was able to publish the app

0

In my case, without my knowledge, the Podfile was shortened a lot. The error that was popping up was:

module 'camera_avfoundation' not found

When comparing the commits with my old solution (when this problem wasn't occurring) this was the Podfile:

# ** OLD PODFILE **
# Uncomment this line to define a global platform for your project
# platform :ios, '11.0'

# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'

project 'Runner', {
  'Debug' => :debug,
  'Profile' => :release,
  'Release' => :release,
}

def flutter_root
  generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__)
  unless File.exist?(generated_xcode_build_settings_path)
    raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first"
  end

  File.foreach(generated_xcode_build_settings_path) do |line|
    matches = line.match(/FLUTTER_ROOT\=(.*)/)
    return matches[1].strip if matches
  end
  raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get"
end

require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root)

flutter_ios_podfile_setup

target 'Runner' do
  use_frameworks!
  use_modular_headers!

  flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
end

post_install do |installer|
  installer.pods_project.targets.each do |target|
    flutter_additional_ios_build_settings(target)
  end
end

And this was the shortened Podfile:

# ** NEW PODFILE **
# Uncomment the next line to define a global platform for your project
# platform :ios, '11.0'

target 'Runner' do
  # Comment the next line if you don't want to use dynamic frameworks
  use_frameworks!

  # Pods for Runner

end

I have no idea how it got shortened, what caused it, but the only thing that changed between these two commits were adding these two libraries:

firebase_core: ^2.4.1
firebase_crashlytics: ^3.0.10

to the project's pubspec.yaml file.

After I saw the diff between these two files, I just overwrote the shorter Podfile with the longer one (from old commit), and everything went well. Hope someone can shed some light why/how this happened, and why deintegrating/cleaning Podfile did not help.

bqubique
  • 678
  • 6
  • 17
0

Just add build number and build version in Xcode (Target->General->Identity)

Find the image

Brian Tompsett - 汤莱恩
  • 5,753
  • 72
  • 57
  • 129
Alistor
  • 11
  • 3