最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

ios - Flutter Application not Building after Setting Up OneSignal - Stack Overflow

programmeradmin1浏览0评论

Since I set up push notifications for my Flutter app following this tutorial , my Flutter app no ​​longer builds for iOS in the CD pipeline. I get the following error:

[17:24:47]: ▸ ProcessException: Process exited abnormally with exit code -6:
[17:24:47]: ▸ Command line invocation:
[17:24:47]: ▸ /Applications/Xcode_15.4.app/Contents/Developer/usr/bin/xcodebuild -list
[17:24:47]: ▸ User defaults from command line:
[17:24:47]: ▸ IDEPackageSupportUseBuiltinSCM = YES
[17:24:47]: ▸ 2025-03-10 17:24:46.855 xcodebuild[13337:34491] [MT] DVTAssertions: ASSERTION FAILURE in DevToolsCore/Xcode3Core/LegacyProjects/Frameworks/DevToolsCore/DevToolsCore/ProjectModel/DataModel/References/SynchronizedGroups/PBXFileSystemSynchronizedAbstractGroup.m:28
[17:24:47]: ▸ Details:  Assertion failed: IDEFileSystemSynchronizedGroupsAreEnabled()
[17:24:47]: ▸ Object:   <PBXFileSystemSynchronizedRootGroup>
[17:24:47]: ▸ Method:   +allocWithZone:
[17:24:47]: ▸ Thread:   <_NSMainThread: 0x60000026c200>{number = 1, name = main}
[17:24:47]: ▸ Hints:
[17:24:47]: ▸ Backtrace:
[17:24:47]: ▸ 0   -[DVTAssertionHandler handleFailureInMethod:object:fileName:lineNumber:assertionSignature:messageFormat:arguments:] (in DVTFoundation)
[17:24:47]: ▸ 1   _DVTAssertionHandler (in DVTFoundation)
[17:24:47]: ▸ 2   _DVTAssertionFailureHandler (in DVTFoundation)
[17:24:47]: ▸ 3   _DVTAssertionWarningHandler (in DVTFoundation)

My pipeline looks like this:

name: iOS Build and Deploy to App Store with Custom Version

on:
  workflow_dispatch:
    inputs:
      version:
        description: 'Version number'
        required: true
        default: '1.0.0'

env:
  FLUTTER_CHANNEL: "stable"
  RUBY_VERSION: "3.2.2"

jobs:
  build_ios:
    name: Build iOS
    runs-on: macos-latest
    timeout-minutes: 20
    steps:
      - name: Checkout
        uses: actions/checkout@v4

      - name: Set up Ruby
        uses: ruby/setup-ruby@v1
        with:
          ruby-version: ${{ env.RUBY_VERSION }}
          bundler-cache: true
          working-directory: 'daytistics/ios'

      - name: Clean up vendor
        working-directory: 'daytistics/ios'
        run: rm -rf vendor

      - name: Install Bundler Gems
        working-directory: 'daytistics/ios'
        run: bundle install

      - name: Run Flutter tasks and get pub packages
        uses: subosito/[email protected]
        with:
          flutter-version-file: 'daytistics/pubspec.yaml'
          channel: ${{ env.FLUTTER_CHANNEL }}
          cache: true

      - name: Get Flutter Packages
        working-directory: ./daytistics
        run: flutter pub get

      - name: Install Bundler Gems
        working-directory: 'daytistics/ios'
        run: |
          bundle install
          bundle exec pod repo update  # Add this line
      # Remove the "Reinstall CocoaPods" step entirely

      - name: Pod Install
        working-directory: 'daytistics/ios'
        run: bundle exec pod install 

      - name: Clean Flutter build
        working-directory: ./daytistics
        run: flutter clean

      - name: Create .env file
        working-directory: ./daytistics
        run: touch .env

      - uses: maierj/[email protected]
        with:
          lane: 'release_app_store'
          subdirectory: daytistics/ios
          options: '{
            "version_number": "${{ github.event.inputs.version }}", 
            "env_vars": ["SUPABASE_URL", "SUPABASE_ANON_KEY", "POSTHOG_API_KEY", "SUPABASE_AUTH_EXTERNAL_GOOGLE_CLIENT_ID", "SENTRY_DSN"]
            }'
        env:
          ASC_KEY_ID: ${{ secrets.ASC_KEY_ID }}
          ASC_ISSUER_ID: ${{ secrets.ASC_ISSUER_ID }}
          ASC_KEY_P8_BASE64: ${{ secrets.ASC_KEY_P8_BASE64 }}
          MATCH_PASSWORD: ${{ secrets.MATCH_PASSWORD }}
          MATCH_GIT_BASIC_AUTHORIZATION: ${{ secrets.MATCH_GIT_BASIC_AUTHORIZATION }}
          APP_BUNDLE_ID: ${{ secrets.APP_BUNDLE_ID }}
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          SUPABASE_URL: ${{ secrets.SUPABASE_URL }}
          SUPABASE_ANON_KEY: ${{ secrets.SUPABASE_ANON_KEY }}
          POSTHOG_API_KEY: ${{ secrets.POSTHOG_API_KEY }}
          SUPABASE_AUTH_EXTERNAL_GOOGLE_CLIENT_ID: ${{ secrets.SUPABASE_AUTH_EXTERNAL_GOOGLE_CLIENT_ID }}
          SENTRY_DSN: ${{ secrets.SENTRY_DSN }}

Everything works as expected in the simulator. However, I think that the problem isn't related to the pipeline. Instead I think it is related to the "Signing Capabilities" in X-Code:

Thanks for your help!

发布评论

评论列表(0)

  1. 暂无评论