0

I am working on Image notification in Flutter iOS. When I try to integrate notification service extension to handle Image notification keeps giving me below error.

Xcode version: 13.3 Flutter version: 3.0.4 Cocoapods: 1.11.3

PrecompileSwiftBridgingHeader normal arm64 (in target 'NotificationService' from project 'Runner')
    cd /Users/apple/Repositories/mobile-app/ios
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-frontend @/var/folders/vy/8gyyr2l514v3zdfnqs5dwj1r0000gn/T/TemporaryDirectory.oAByE5/arguments-6574441530510196663.resp

/Users/apple/Repositories/mobile-app/ios/Runner/Runner-Bridging-Header.h:1:9: note: in file included from /Users/apple/Repositories/mobile-app/ios/Runner/Runner-Bridging-Header.h:1:
#import "GeneratedPluginRegistrant.h"
        ^
/Users/apple/Repositories/mobile-app/ios/Runner/GeneratedPluginRegistrant.h:10:9: error: 'Flutter/Flutter.h' file not found
#import <Flutter/Flutter.h>
        ^
1 error generated.
<unknown>:0: error: failed to emit precompiled header '/Users/apple/Library/Developer/Xcode/DerivedData/Runner-gvtblqnxzjyzrjegzjulbjazofmn/Build/Intermediates.noindex/PrecompiledHeaders/Runner-Bridging-Header-swift_CODZTVOZLQBY-clang_3ARRQSDQSEFTX.pch' for bridging header '/Users/apple/Repositories/mobile-app/ios/Runner/Runner-Bridging-Header.h'

Web engage documentation

Here is my PodFile

# Uncomment this line to define a global platform for your project
platform :ios, '12.0'
# $FirebaseSDKVersion = '7.10.0'

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

project 'Runner', {
  'Debug' => :debug,
  'Profile' => :release,
  'Release' => :release,
  'Debug-dev' => :debug,
  'Profile-dev' => :release,
  'Release-dev' => :release,
  'Debug-prod' => :debug,
  'Profile-prod' => :release,
  'Release-prod' => :release,
  'Debug-stage' => :debug,
  'Profile-stage' => :release,
  'Release-stage' => :release,
  'Debug-qa' => :debug,
  'Profile-qa' => :release,
  'Release-qa' => :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
  #pod 'FirebaseFirestore', :git => 'https://github.com/invertase/firestore-ios-sdk-frameworks.git', :tag => '8.6.0'
  use_frameworks! :linkage => :static
  pod 'WebEngage'

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

# ServiceExtension Target
target 'NotificationService' do
    use_frameworks! :linkage => :static
    platform :ios, '12.0'
    pod 'WebEngage'
    pod 'Firebase/Messaging'
    pod 'WebEngageBannerPush'
end

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'] = '12.0'

      config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] ||= [
        '$(inherited)',

        # dart: PermissionGroup.calendar
        'PERMISSION_EVENTS=0',

        # dart: PermissionGroup.reminders
        'PERMISSION_REMINDERS=0',

        # dart: PermissionGroup.contacts
        'PERMISSION_CONTACTS=0',

        # dart: PermissionGroup.camera
        'PERMISSION_CAMERA=1',

        # dart: PermissionGroup.microphone
        'PERMISSION_MICROPHONE=0',

        # dart: PermissionGroup.speech
        'PERMISSION_SPEECH_RECOGNIZER=0',

        # dart: PermissionGroup.photos
        'PERMISSION_PHOTOS=1',

        # dart: [PermissionGroup.location, PermissionGroup.locationAlways, PermissionGroup.locationWhenInUse]
        'PERMISSION_LOCATION=0',

        # # dart: PermissionGroup.notification
        # 'PERMISSION_NOTIFICATIONS=0',

        # dart: PermissionGroup.mediaLibrary
        'PERMISSION_MEDIA_LIBRARY=0',

        # dart: PermissionGroup.sensors
        'PERMISSION_SENSORS=0',

        # dart: PermissionGroup.bluetooth
        'PERMISSION_BLUETOOTH=0'
      ]
    end
  end
  installer.pods_project.build_configurations.each do |config|
    config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
  end
end

Already tried methods with no luck.

  1. Flutter clean
  2. Delete Podfile.lock, Pods, Flutter.podspec
  3. Delete Derived Data Xcode
  4. Flutter pub cache repair
  5. Remove .cocoapods directory
  6. Clean build folder

0 Answers0