source

Xcode 8 제출 시 "aps-environment 자격이 앱 서명에서 누락됨"

ittop 2023. 5. 7. 11:51
반응형

Xcode 8 제출 시 "aps-environment 자격이 앱 서명에서 누락됨"

지난 6개월 동안 수십 개의 버전을 제출한 앱이 있는데 APNS를 사용합니다.Xcode 8로 업그레이드한 후 Apple로부터 다음과 같은 이메일을 받았습니다.

개발자님께,

APP_NAME에 대한 최근 배달에서 하나 이상의 문제를 발견했습니다. 배달이 성공적이었지만 다음 배달에서 다음 문제를 해결하기를 원할 수 있습니다.

푸시 알림 사용 권한 누락 - 앱에 Apple의 푸시 알림 서비스용 API가 포함되어 있지만 aps-환경 사용 권한이 앱 서명에 없습니다.이 문제를 해결하려면 Provisioning Portal에서 앱 ID가 푸시 알림에 사용되도록 설정되어 있는지 확인합니다.그런 다음 aps-환경 자격이 포함된 배포 프로비저닝 프로파일로 앱에 서명합니다.이렇게 하면 올바른 서명이 생성되고 앱을 다시 제출할 수 있습니다.자세한 내용은 로컬 및 푸시 알림 프로그래밍 안내서의 "프로비저닝 및 개발"을 참조하십시오.앱이 Apple Push Notification 서비스를 사용하지 않는 경우에는 아무런 조치도 필요하지 않습니다.이 경고를 중지하려면 이후 제출에서 API를 제거할 수 있습니다.타사 프레임워크를 사용하는 경우 개발자에게 문의하여 API 제거에 대한 정보를 얻어야 할 수 있습니다.

문제를 해결한 후에는 Xcode 또는 Application Loader를 사용하여 새 이진 파일을 iTunes Connect에 업로드할 수 있습니다.

안부 전해요,

앱스토어 팀

이상한 것은 제가 developer.apple.com -> 인증서, 식별자 및 프로필을 방문했는데 제 AppId에 푸시 알림이 아직 활성화되어 있다는 것입니다.나는 지금까지 했던 것과 다른 것을 하지 않고 있는데, Xcode 8 업데이트가 고장난 것이 아닌지 궁금합니다.아이디어 있어요?

BTW: 푸시 알림 프로그래밍 가이드에 대한 링크가 이메일에서 깨졌습니다. 그래서 그것은 좋은 징조가 아닙니다.

사실 매우 쉽습니다.어떤 이유에서인지 Xcode 8에서 비활성화되었지만 Targets -> Capabilities로 이동하여 Push Notifications가 해당 보기에서 모두 올바른지 확인합니다.저의 경우에는 "Fix Me"를 클릭하고 voila를 클릭해야 했습니다.

저도 같은 문제가 있는데, Xcode8에서는 Push 알림이 기본적으로 해제되어 있습니다.저는 그것을 알아차리지 못했습니다.조심하세요.

능력

Xcode 8에서 사용자의 사용 권한이 더 이상 App Identifier에서 제공되는 것이 아니라 App Target에서 선택한 기능에서 제공되는 변경 사항이 있습니다.따라서 Unome(OP)에서 말한 것처럼 Push Notifications가 켜져 있는지 확인해야 합니다.

"Fix Me(수정)" 버튼은 아니었지만 두 개의 사용 권한 파일(개발용과 배포용)이 있었습니다. Notifications 하면 Push Notifications(누름 알림)가 됩니다.aps-environment- 값 - 함포인 경우development배포 권한 파일에 추가할 수 없습니다.배포에 동일한 키를 복사하면 iTunes Connect에 업로드할 때 경고 이메일이 제거됩니다.

대부분의 프로젝트의 경우 푸시 알림을 설정하면 충분합니다. 또는 이미 설정되어 있지만 키가 사용 권한에 없는 경우에는 해제했다가 다시 설정해 보십시오.

또한 아카이브 중에 사용 권한이 자동으로 업데이트됩니다.릴리스 빌드에 대해 생성된 사용 권한은 개발 빌드에 대해 생성된 사용 권한과 다를 수 있습니다.여기 참조

Xcode Organizer > Archives 탭을 통한 앱 배포 과정에서 코드 서명에 사용되는 프로비저닝 프로필을 통해 앱에 대한 사용 권한이 설정됩니다.이 단계에서 자격을 다시 적용하면 테스트한 이전 개발 빌드 간에 의도하지 않은 자격 차이가 발생할 수 있습니다.이 문서의 주요 목적은 베타 테스트 및 App Store 제출을 위한 배포 빌드에 대한 사용 권한이 올바른지 확인하는 것입니다.

Xcode 릴리스 정보:

Xcode 8은 빌드 시 프로비저닝 프로파일에서 aps-환경 자격을 자동으로 복사하지 않습니다.이 동작은 의도적입니다.이 사용 권한을 사용하려면 프로젝트 편집기의 기능 창에서 알림 푸시를 실행하거나 사용 권한 파일에 사용 권한을 수동으로 추가하십시오.(28076333)

aps-환경 자격에 plist가 필요하지 않다는 것이 항상 이상했기 때문에 이것은 큰 변화입니다. 하지만 다른 많은 사람들은 그렇게 했습니다.

무작정 "수정"을 누르고 현재 사용 권한 파일이 없는 사용자는 프로젝트의 빌드 설정에서 "코드 서명 사용 권한" 아래에 참조되는 plist 파일일 뿐입니다.

Xcode 8과의 하루의 투쟁 후에 우리는 왜 그것이aps-environment디버그 빌드에 개발이 추가되지 않았습니다.디버깅 테스트를 위해 빌드된 앱의 사용 권한 섹션에 없습니다.새 기능을 사용하도록 설정하고 사용 권한 파일이 존재했음에도 불구하고,문제는 디버그 권한에 대한 Xcode 빌드 설정에서 모든 SDK에 대한 권한 파일을 설정해야 한다는 것입니다.

스크린샷

XCode 7.3.1을 사용하여 Apple로부터 동일한 이메일을 받았습니다.문제를 해결하기 위해 제가 한 일은 다음과 같습니다.

  1. Capabilities > @Bruce Tsai answer에 명시된 대로 PUSH 알림을 ON으로 설정합니다.
  2. 이미지에 표시된 것처럼 빌드 설정 > 코드 서명 > 코드 서명 ID에서 디버그를 위한 개발자 인증서와 릴리스를 위한 배포 인증서를 설정합니다.

여기에 이미지 설명 입력 여기에 이미지 설명 입력

자동으로 서명 관리가 해제되었습니다.

자동으로 서명 관리가 해제되었습니다. 확인하고 잘 작동합니다.

Firebase 프레임워크를 사용하고 있고 푸시 알림을 사용하지 않는 경우 두 가지 해결책이 있습니다. 1. 바이너리를 업로드할 때마다 전체 팀에게 전송되는 '이슈' 메시지를 참고하십시오.경고를 무시할 수 있는 알림을 실제로 사용하지 않는 한 앱은 계속 제출로 허용됩니다.또는 2. 이렇게 합니다: https://stackoverflow.com/a/46802075/7529450 .이렇게 하면 성가신 전자 메일 알림이 제거되고 제출로 수락됩니다.

Xcode 9를 사용하여 푸시 알림이 활성화되었습니다.

푸시 알림 기능을 비활성화/재활성화하려고 했습니다.(작동하지 않음)

자동으로 서명 관리를 비활성화/다시 활성화하려고 했습니다.(작동하지 않음)

프로비저닝 프로필을 삭제했다가 다시 추가해야 했습니다.(여기서 수행 방법 참조) 나중자동으로 서명 관리를 사용하지 않도록 설정하거나 다시 사용하도록 설정해야 할 수 있습니다.

문제는 두 개의 사용 권한 파일이 있었기 때문입니다.Entitlements-Debug.plist그리고.Entitlements-Release.plist그 중 하나(디버그)만 설정이 필요합니다.

빌드 설정 > 서명 > 코드 서명 권한의 다중 값을 단일 값으로 변경MyAppName/MyAppName.entitlements그런 다음 Capabilities > Push Notifications 전환기를 다시 활성화하면 유용합니다.

도움이 되길 바랍니다.

더 효과가 옵션: " " "의 ": "" "" ""의 소스를 복사하여 붙여넣기"AppName/Entitlements-Debug.plist안으로AppName/Entitlements-Release.plist.

언급URL : https://stackoverflow.com/questions/39554177/xcode-8-the-aps-environment-entitlement-is-missing-from-the-apps-signature-on

반응형