ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 앱 스토어 배포하다 생긴 Asset vaildation failed The Info.plist key 'BGTaskSchedulerPermittedldentifiers' ... 에러에 대하여
    App Store Connect 2024. 6. 24. 15:13
    728x90

     

    생애 첫 심사를 앞두고 Human Interface Guide도 열심히 보고, QA도 마지막까지 열심히 하면서 뜯어 고치다가 결국 마침내 약 3개월의 개발을 끝(?)으로 앱스토어 Connect에 심사를 넣을 준비를 시작했다.

     

    심사를 넣기 위해 할 일

    1. 앱 스토어 Connect(https://appstoreconnect.apple.com/)에 접속해서 신규 앱 생성하기

    2. 앱 정보, 앱 미리보기 및 스크린샷, 기타 정보들을 모두 기입하고 임시 저장하기

    3. Xcode에서 Product > Archive 해서 Connect에 올리기

    4. 내부 테스트 후 심사 버튼!!

     

    인데 이 Archive를 하던 중 에러가 났다..

    Missing Info.plist value. The Info.plist key 'BGTaskSchedulerPermittedldentifiers' must contain a list of identifiers used to submit and handle tasks when 'UlBackgroundModes' has a value of 'processing'.

     

    이게 대체 무슨 에러인가?

    내가 개발하고 있는 앱이 백그라운드 모드가 추가된 상태라면? info.plist에 관련 정보를 입력해달라는 것!

    이 모드가 추가된 상태인지 아닌지는 해당 프로젝트의 Targets > Signing & Capability > Background Modes를 보면 알 수 있다.

    백그라운드에 대해서 살짝 알아보자면

    Background Task는 두 가지 유형이 있다.

     

    1. BGAppRefreshTask

    가벼운 작업, 단순 API 호출 및 저장, 사용자가 기기를 사용하는 시간에도 실행이 가능

     

    2. BGProcessingTask

    DB 등의 크고 무거운 작업으로 아이폰이 충전 중이거나 사용되지 않을 때 실행됨

     

    여기서 내가 체크한 모드들은 Remote notifications(푸시 알림), Background fetch(앱이 실행 중일 때 푸시 알림이 오게 하기 위함), Background processing(아이폰이 꺼져있을 때도 푸시 알림이 오게 하기 위함) 3가지였다.

    근데 이 백그라운드 모드를 사용하기 위해서는? Info.plist에도 무언가 Key를 적용해줘야 한다.

     

    Info.plist에 내용 추가하기

    <key>Permitted background task scheduler identifiers</key>
    <array>
    	<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
    </array>

     

    해당 내용을 추가한 후 다시 Archive하면 Connect에 올릴 수 있다!

    728x90
예콩이의 코드 레시피