1

我正在尝试为使用 Flutter 制作的 IOS 构建应用程序。

我没有 mac 设备来完成这项工作,所以我试图从 codemagic.io 生成我的 IPA 文件。

我为 Apple Developer Program 创建了一个帐户并支付了账单。

我遵循了使用 Codemagic 的说明,包括 iOS 代码签名说明:https ://docs.codemagic.io/code-signing/ios-code-signing/ 。

我在 GitHub 上创建了一个存储库并生成了一个配置文件(codemagic.yaml)。

所以当我尝试构建我的应用程序(发布版本)时,我遇到了以下问题:

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

我不明白。代码签名有问题吗?

在我的 Apple Developer Account 上,我可以看到已生成证书。

Codemagic 的上一步似乎没问题:

== 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 david.matoska@gmail.com

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!

你能帮我么 ?

4

2 回答 2

1

所以......它工作:) !!!!!!

我不得不更改我的 pubspec.yaml 文件。

我采用了 Neumorphic 的 0.4.0 版本(相对于 0.3.2 版本)。

@Captivity,再次感谢您对 info.plist 文件的帮助。

再见。

于 2020-08-18T14:06:28.507 回答
0

好吧,你的“钥匙”UIViewControllerBasedStatusBarAppearance没有赋值。

于 2020-08-18T12:04:18.983 回答