Flutter - Codemagic - IOS build fail
So ... It worked :) !!!!!!
I had to change my pubspec.yaml file.
I took the 0.4.0 version of Neumorphic (versus 0.3.2 version).
@Captivity , thank you again for your help with the info.plist file.
Bye.
David
Updated on December 23, 2022Comments
-
David over 1 year
I'm trying to build an app for IOS made with Flutter.
I have no mac device to do the job so I'm trying to generate my IPA file from codemagic.io .
I created an account for Apple Developer Program and paid the bill.
I followed the instructions for using Codemagic, including instructions for iOS code signing : https://docs.codemagic.io/code-signing/ios-code-signing/ .
I created a repository on GitHub and generated a configuration file (codemagic.yaml).
So when I try to build my app (release version), I have the following problem:
Building iOS 1m 23s == Building for iOS == > /usr/local/bin/flutter build ios --release --no-codesign /Users/builder/clone/ios/Runner/Info.plist: Property List error: Found non-key inside <dict> at line 44 / JSON error: JSON text did not start with array or object and option to allow fragments not set. Warning: Building for device with codesigning disabled. You will have to manually codesign before deploying to device. Building fr.remax.franckehrart for device (ios-release)... Project base configurations detected, removing. Running pod install... 6.2s /Users/builder/clone/ios/Runner/Info.plist: Property List error: Found non-key inside <dict> at line 44 / JSON error: JSON text did not start with array or object and option to allow fragments not set. Running Xcode build... Xcode build done. 48.3s Failed to build iOS app Error output from Xcode build: ↳ ** BUILD FAILED ** Xcode's output: ↳ ../programs/flutter/.pub-cache/hosted/pub.dartlang.org/neumorphic-0.3.2/lib/src/components/selection_controls.dart:182:10: Error: The method '_NeuSelectionControls.buildToolbar' has fewer positional arguments than those of overridden method 'TextSelectionControls.buildToolbar'. Widget buildToolbar( ^ ../programs/flutter/packages/flutter/lib/src/widgets/text_selection.dart:136:10: Context: This is the overridden method ('buildToolbar'). Widget buildToolbar( ^ ../programs/flutter/.pub-cache/hosted/pub.dartlang.org/neumorphic-0.3.2/lib/src/components/selection_controls.dart:222:59: Error: Too few positional arguments: 2 required, 1 given. handleCopy: canCopy(delegate) ? () => handleCopy(delegate) : null, ^ Command PhaseScriptExecution failed with a nonzero exit code note: Using new build system note: Building targets in parallel note: Planning build note: Constructing build description Encountered error while building for device. Build failed :| Failed to build for iOS
I don't understand. Is it a problem with code signing ?
On my Apple Developer Account I can see that a certificate has been generated.
The previous step on Codemagic seems to be ok :
== Fetch code signing files from Apple Developer Portal == Automatically detected bundle identifier "fr.remax.franckehrart" from project Fetch App Store signing files for bundle identifier "fr.remax.franckehrart" Initializing Apple Developer Portal session with [email protected] Using Apple Developer Portal team david matoska (HBD2Z7384F) to fetch signing files Found App ID "fr remax franckehrart" for bundle identifier "fr.remax.franckehrart" Found code signing certificate "Apple Push Services: fr.remax.franckehrart" Found code signing certificate "iOS Distribution: david matoska" Found iOS Distribution provisioning profile "fr remax franckehrart app_store 1597698130" > keychain initialize Initialize new keychain to store code signing certificates at /var/folders/r7/d9twdq011sb8d3q1p8f39cdr0000gn/T/build_4qw6y93s.keychain Create keychain /var/folders/r7/d9twdq011sb8d3q1p8f39cdr0000gn/T/build_4qw6y93s.keychain Set keychain /var/folders/r7/d9twdq011sb8d3q1p8f39cdr0000gn/T/build_4qw6y93s.keychain timeout to "no timeout" Set keychain /var/folders/r7/d9twdq011sb8d3q1p8f39cdr0000gn/T/build_4qw6y93s.keychain to system default keychain Unlock keychain /var/folders/r7/d9twdq011sb8d3q1p8f39cdr0000gn/T/build_4qw6y93s.keychain > keychain add-certificates --certificate /tmp/aps_uiasoh6i.p12 --certificate-password @env:CERTIFICATE_PASSWORD Add certificates to keychain /private/var/folders/r7/d9twdq011sb8d3q1p8f39cdr0000gn/T/build_4qw6y93s.keychain Searching for files matching /tmp/aps_uiasoh6i.p12 Add certificate /tmp/aps_uiasoh6i.p12 to keychain /private/var/folders/r7/d9twdq011sb8d3q1p8f39cdr0000gn/T/build_4qw6y93s.keychain 1 identity imported. > keychain add-certificates --certificate /tmp/ios_distribution_ln2czakc.p12 --certificate-password @env:CERTIFICATE_PASSWORD Add certificates to keychain /private/var/folders/r7/d9twdq011sb8d3q1p8f39cdr0000gn/T/build_4qw6y93s.keychain Searching for files matching /tmp/ios_distribution_ln2czakc.p12 Add certificate /tmp/ios_distribution_ln2czakc.p12 to keychain /private/var/folders/r7/d9twdq011sb8d3q1p8f39cdr0000gn/T/build_4qw6y93s.keychain 1 identity imported. == Install Flutter dependencies == > /usr/local/bin/flutter packages pub get Resolving dependencies... > async 2.4.2 (was 2.4.1) (2.5.0-nullsafety available) + characters 1.0.0 (1.1.0-nullsafety.2 available) + clock 1.0.1 (1.1.0-nullsafety available) > collection 1.14.13 (was 1.14.12) (1.15.0-nullsafety.2 available) + fake_async 1.1.0 (1.2.0-nullsafety available) > matcher 0.12.8 (was 0.12.6) (0.12.9 available) > path 1.7.0 (was 1.6.4) (1.8.0-nullsafety available) > stack_trace 1.9.5 (was 1.9.3) (1.10.0-nullsafety available) > test_api 0.2.17 (was 0.2.15) (0.2.18 available) > typed_data 1.2.0 (was 1.1.6) (1.3.0-nullsafety.2 available) These packages are no longer being depended on: - quiver 2.1.3 Downloading flutter_rename_app 1.0.0... Downloading flutter_launcher_icons 0.7.5... Downloading neumorphic 0.3.2... Downloading curved_navigation_bar 0.3.3... Downloading ansicolor 1.0.2... Downloading process_run 0.10.12+1... Downloading image 2.1.12... Downloading xml 3.6.1... Downloading petitparser 2.4.0... Downloading crypto 2.1.4... Changed 11 dependencies!
Can you please help me ?
-
Captivity over 3 yearsYou must show the code from Info.plist file
-
-
David over 3 yearsGreat ! I had a look at the following doc : developer.apple.com/documentation/bundleresources/… .
-
David over 3 yearsAm I supposed to write something like <key>UIViewControllerBasedStatusBarAppearance=true</key> or <key>UIViewControllerBasedStatusBarAppearance=false</key> in info.plist file ?
-
Captivity over 3 years@David You shoul write:
<key>UIViewControllerBasedStatusBarAppearance</key> <true/>
-
David over 3 yearsSo helpful ! Thank you so much, I will try and tell you. It's my very first trying to build something for iOS.
-
Captivity over 3 yearsOf course you can write value
false
depending on that you want :) Important is to key have value. -
Dickson Chibuzor over 3 yearsHad the same problem and this fixed my issue