prosource

iOS Simulator 배포 대상은 7.0으로 설정되었지만 이 플랫폼에서 지원되는 배포 대상 버전은 8.0에서 12.1입니다.

probook 2023. 4. 23. 10:36
반응형

iOS Simulator 배포 대상은 7.0으로 설정되었지만 이 플랫폼에서 지원되는 배포 대상 버전은 8.0에서 12.1입니다.

Xcode 10.1에서 아래 경고 메시지가 나타납니다.

iOS Simulator 배포 대상은 7.0으로 설정되었지만 이 플랫폼에서 지원되는 배포 대상 버전은 8.0에서 12.1까지입니다.

나의 시뮬레이터는 12.1 Xcode 10.1로 동작한다.

그리고 나는 내 포드 파일을 업데이트했다.

여기에 이미지 설명 입력

도입 목표는 9.0

여기에 이미지 설명 입력

나의 타겟은

여기에 이미지 설명 입력

다음과 같이 모든 포드 파일의 배포 대상을 현재 프로젝트 배포 대상에 자동으로 일치하도록 포드 파일을 설정할 수 있습니다.

post_install do |installer|
 installer.pods_project.targets.each do |target|
  target.build_configurations.each do |config|
   config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '9.0'
  end
 end
end

문제는 프로젝트 배포 대상 iOS 버전이 아닌 포드 파일 배포 대상 iOS 버전에 있습니다. 따라서 프로젝트 작업 공간을 열고 다음을 수행하려면 포드용 배포 iOS 버전을 8.0 이상으로 변경해야 합니다.

1 - 팟을 클릭합니다.

2- 각 프로젝트와 대상을 선택하고 빌드 설정을 클릭합니다.

3- Deployment(도입) 섹션에서 iOS Deployment Target(iOS 배포 대상) 버전을 8.0 이상으로 변경합니다(같은 프로젝트 버전을 사용해 보는 것이 좋습니다).

4- 포드 내의 다른 모든 프로젝트에 대해 이 작업을 반복한 후 앱을 실행합니다.

상세한 것에 대하여는 사진을 참조해 주세요.

인스톨로 하는 것이 , 할 수 , 은 「」로부터됩니다.Podfile.

할 요.pod install츠키노

platform :ios, '12.0'

  post_install do |installer|
    installer.pods_project.targets.each do |target|
      target.build_configurations.each do |config|
        config.build_settings.delete 'IPHONEOS_DEPLOYMENT_TARGET'
      end
    end
  end

Tao-Nhan Nguyen의 답변을 반복하고 모든 팟의 원래 값을 계산하고 8.0보다 크지 않은 경우에만 값을 조정합니다.다음을 포드 파일에 추가합니다.

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      if Gem::Version.new('8.0') > Gem::Version.new(config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'])
        config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '8.0'
      end
    end
  end
end

프로젝트 전개 타깃을 모든 포드 타깃에 적용할 수 있습니다.아래의 코드 블록을 포드 파일 끝에 추가하여 해결합니다.

post_install do |installer|
  fix_deployment_target(installer)
end

def fix_deployment_target(installer)
  return if !installer
  project = installer.pods_project
  project_deployment_target = project.build_configurations.first.build_settings['IPHONEOS_DEPLOYMENT_TARGET']

  puts "Make sure all pods deployment target is #{project_deployment_target.green}"
  project.targets.each do |target|
    puts "  #{target.name}".blue
    target.build_configurations.each do |config|
      old_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET']
      new_target = project_deployment_target
      next if old_target == new_target
      puts "    #{config.name}: #{old_target.yellow} -> #{new_target.green}"
      config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = new_target
    end
  end
end

결과 로그:

포드 배포 대상 버전 수정 주의

에서 온 하고 /build 라고 합니다.react-native run ios

다음의 순서를 시험해 보겠습니다.

  1. Podfile.lock을 삭제합니다.
  2. 포드 파일 삭제
  3. 프로젝트 구축
  4. 파이어베이스에서 초기화 코드 추가
  5. cd /ios
  6. pod install
  7. 프로젝트를 실행하다

이것이 나에게 효과가 있었다.

이 솔루션은 Flutter에 효과가 있었습니다.열다.{your_project_root_folder}/ios/Podfile을 이 post_install 블록으로 .

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.delete 'IPHONEOS_DEPLOYMENT_TARGET'
    end
  end
end

Swift의 경우

Xcode 12와 함께 코코아팟을 사용하는 경우 다음과 같은 오류가 발생할 수 있습니다.

The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0, but the range of supported deployment target versions is 9.0 to 14.

이는 iOS 8 지원이 중단되었지만 포드의 최소 배포 대상은 iOS 8이기 때문에 발생합니다.

이 문제가 해결될 때까지 다음을 포드 파일에 추가할 수 있습니다.

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings.delete 'IPHONEOS_DEPLOYMENT_TARGET'
    end
  end
end

그러면 프로젝트의 모든 포드에서 배포 대상이 제거되고 Podfile 상단에 지정된 프로젝트/워크스페이스 배포 대상이 상속됩니다.

리액트 네이티브의 경우

하고 ./project-root/ios/build를 합니다.react-native run ios

Cordova의 경우

<preference name="deployment-target" value="8.0" />

만 신 의 이 것 if your 약 are?react-native and facing this error just do this그리고 이 오류에 직면했을 때 그냥 이렇게 하세요.

  1. 다 열?Podfile프로젝트 > IOS>POD 파일)( 트 > 드 일 포)
  2. 코멘트 플리퍼 함수는 아래와 같이 포드파일에 있습니다.
#use_flipper!
 #post_install do |installer|
   #flipper_post_install(installer)
 #end
  1. 부 내 터미널에서 터미널에서IOS folder enter this command folder 이 명령어를 입력합니다.pod install

그래, 그게 너한테 효과가 있길 바라는 거야

최신 리액트 네이티브로 업데이트 중 문제가 발생하는 사용자가 있는 경우 로 포드 파일을 업데이트해 보십시오.

  use_flipper!
  post_install do |installer|
    flipper_post_install(installer)
    installer.pods_project.targets.each do |target|
      target.build_configurations.each do |config|
        config.build_settings.delete 'IPHONEOS_DEPLOYMENT_TARGET'
      end
    end
   end

다음 행의 코멘트를 해제하기만 하면 됩니다.

# platform :ios, '8.0'

또는

# platform :ios, '9.0'

기타...

터미널에서 iOS 폴더를 열고 다음 명령을 전달합니다.

% pod repo update
% pod install

이 문제를 해결했습니다. 빌드 시스템을 로 변경했습니다.Legacy Build System부에서New Build System

Xcode v10+에서 [File]> [ Project Settings ]를 선택합니다.

이전 Xcode에서는 [File]> [ Workspace Settings ]를 선택합니다.

여기에 이미지 설명 입력

드 시스템 변경 사항 변경Legacy Build System부에서New Build System-> - [] - >] 릭 --클합을니gtgt다&&)를 클릭합니다.

여기에 이미지 설명 입력

Flutter에서 에게 효과가 있었던 간단한 수정:

  1. 제 삭제Podfile ★★★★★★★★★★★★★★★★★」Podfile.lock
  2. 실행: 행 : 듭 니 다 만 로)를 만들 것입니다.Podfile이 경우에도 오류가 발생하여 실패할 수 있습니다.
  3. In the new 새로운 환경에서Podfile, 2차선을 바꾸면 코 멘 제 하 째 경 합 uncom ,변로다행 tond니 change line thement번 2두해 and을고를트 uncom ,nd to line. changeplatform :ios, '12.0'(또는 대상)(또는 다른 미니 버전)(또는 전 타 소 는 ) ) other)
  4. 지금 바로 앱 다시 실행 오류 없이

Flutter의 경우 사용

platform :ios, '10.0'

post_install do |installer|
  installer.pods_project.targets.each do |target|
    flutter_additional_ios_build_settings(target)
  end
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings.delete 'IPHONEOS_DEPLOYMENT_TARGET'
    end
  end
end

도움이 되었다:

rm ios/Podfile
flutter pub upgrade
flutter pub get
cd ios && pod update
flutter clean && flutter run
sudo arch -x86_64 gem install ffi
arch -x86_64 pod install 

위의 대부분은 나에게 효과가 없었다.자세히 살펴보면 팟 설치를 수동으로 실행해서는 안 된다는 것을 알 수 있습니다.물리 디바이스가 xcode에 등록되어 있는지 확인하는 것이 효과가 있었습니다.

  • ios의 xcode 워크스페이스를 엽니다.디바이스(USB 경유로 접속되어 있는 경우)를 선택하고 실행을 클릭합니다.그러면 xcode가 단말기를 등록하도록 요구됩니다.
  • xcode 빌드는 실패할 가능성이 높으며 이는 정상입니다.다음 단계를 참조하십시오.
  • Xcode 종료!
  • cd ios
  • rm - fR Podfile Podfile.lock 팟
  • Android Studio에서 문제의 디바이스를 선택하고 c

이 문제를 안고 있는 코르도바 개발자를 위해

설정하려고 하다

<preference name="deployment-target" value="8.0" />

config.xml로 설정

Firebase 10.1 및 Xcode 14.1에서 이 문제를 해결한 방법은 다음과 같습니다.

  1. X 코드를 엽니다.Product>Analyze모든 것을 손에 넣다IPHONEOS_DEPLOYMENT_TARGET경고.Xcode를 닫습니다.
  2. 이름 바꾸기DerivedData디렉토리/Users/YourUserName/Library/Developer/Xcode/로.DerivedData-old
  3. 열다.Terminal프로젝트 디렉토리에서 다음을 수행합니다.

pod cache clean --all && pod deintegrate && pod install --repo-update

  1. Xcode를 엽니다.프로젝트 파일을 클릭합니다.Targets 섹션에서 "Firebase"를 선택합니다.그 후 다음 변경을 수행합니다.

iOS 배포 대상 값을 선택하고 11.0을 선택한 다음 Other를 선택하고 10.0을 입력한 다음 다음과 같이 입력합니다.

  1. 모든 경고가 사라지고 Xcode의 경고가 하나 표시됩니다. "Update to recommended settings"

여기에 이미지 설명 입력

  1. 를 클릭합니다.Perform Changes단추
  2. Xcode 재시작

이에 대한 자세한 내용은 Firebase 프로젝트 저장소에서 확인할 수 있습니다.

먼저, 「11.0」과 같이 선택한 전개로 변경하고, 이 순서를 포드 파일의 마지막 파일에 추가합니다.

end
post_install do |installer|
 installer.pods_project.targets.each do |target|
  target.build_configurations.each do |config|
   config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '11.0'
  end
 end
end

2021년에 XCode를 v13으로 업데이트한 후 이 문제가 발생하는 경우 다음과 같은 수정이 도움이 됩니다.

https://github.com/facebook/react-native/issues/31733#issuecomment-924016466

단, 모든 리액트네이티브버전에서는 동작하지 않을 수 있습니다.v0.64에서는 동작했습니다.

Xcode를 사용하여 더미 스위프트 파일을 생성했기 때문에 자동으로 "Bridging Header"에 대한 요청을 받았습니다.

여기에 이미지 설명 입력

향후 릴리즈에서는 이 문제가 해결되기를 바랍니다.

리액트 네이티브 프로젝트 작성에도 같은 문제가 있었습니다.

cocatods 버전 업데이트는 나에게 효과가 있었다(1.8.4에서1.11.2로 변경)

Xcode > Runner > Info Deployment Target > IOS Deployment Target : 11 。

오픈 터미널:

pod cache clean --all

.

pod update

(표준)제 경우 실수로 dart.js를 Import했기 때문에 새로고침 또는 새로운 재시작 시 dart.js가 동작하지 않으면 Import를 체크합니다.

펄럭이는 건 이거예요.<project_root>/ios/Podfile

post_install do |installer|
  installer.pods_project.targets.each do |target|
    flutter_additional_ios_build_settings(target)
  end
  
  installer.pods_project.build_configurations.each do |config|
    config.build_settings["EXCLUDED_ARCHS"] = "armv7"
    config.build_settings.delete 'IPHONEOS_DEPLOYMENT_TARGET'
  end
end

pods 폴더 및 podfile.lock 삭제, podfile 및 xcode에 배포 대상 추가

이 문제를 해결하려면podfile.

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'] = '9.0' // you can change this version as per your requirments.
    end
  end
end 

이 라인을 사용해야 합니다.podfile앱이 실행됩니다.

이것은 M1 MacBooks에서 이미 알려진 문제입니다.플래터 업그레이드를 실행하면 수정됩니다.

M1 맥북 12.0.0 플래터 2.10.0 다트 2.16.0 현재 작업 중

언급URL : https://stackoverflow.com/questions/54704207/the-ios-simulator-deployment-targets-is-set-to-7-0-but-the-range-of-supported-d

반응형