푸시 알림을받을 수있는 간단한 간단한 iOS 앱을 만들기 위해 매우 열심히 노력했습니다. 이 작업을 수행하는 유일한 이유는 다른 팀 구성원이 사용할 절차를 설정하고 웹에서 다른 곳에서 최신 버전의 해당 지침을 찾을 수 없었기 때문입니다. 우리 가게는 iOS 개발자에게 상당히 새롭고 개인적으로 iOS 개발자와 Xcode를 완전히 경험하지 못했습니다. 나는 애플과 다른 곳에서 온 수십 개의 튜토리얼, 기사 및 문제 게시물을 우연히 발견했으며 거의 거기에있을 것 같은 느낌이 들었습니다 ...
여기에 내가 가야 할 곳이 있습니다 (Xcode 4.3을 사용하고 처음에는 iOS 5.1에만 배포하려고 시도하고 있으며 최근에 이전 버전의 Xcode와 비교하여 일부 변경 사항이있을 수 있지만 다시 한 번 새로 모았습니다. 이것은-완전히 혼란스럽고 복잡한 것을 발견했습니다) :
1) 푸시가 활성화 된 iPhone의 프로비저닝 프로파일이 있습니다.
2) 내 테스트 Xcode 프로젝트에서 서명 ID로 선택된 프로비저닝 프로파일이 있습니다 (빌드 설정> 코드 서명).
3) 요약 및 정보> 사용자 정의 iOS 대상 속성 아래에 번들 식별자가 있습니다. * (생각합니다 ??)
4) 대리인의 didFinishLaunchingWithOptions에서 registerForRemoteNotificationTypes가 호출되었습니다.
5) 대리인에 didRegisterForRemoteNotificationsWithDeviceToken 및 didFailToRegisterForRemoteNotificationsWithError가 있고 장치 토큰 또는 오류를 각각 기록하도록 설정되었습니다.
6) 요약에서 사용 권한 부여를 확인했습니다.
7) 선택한 Entitlements File 바로 아래에는 Tinker6 (테스트 프로젝트 이름)이 있으며 Entitlements 활성화를 선택하면 자동으로 생성됩니다.
8) Tinker6.entitlements 파일에서 다음을 얻었습니다 (웹에서 여러 게시물을 기반으로 올바로 작성했지만 Apple 자체에서 명확한 것을 찾을 수는 없습니다).
업데이트
9) 또한 자격 파일없이 모든 것을 시도했으며 본질적으로 동일한 결과를 얻었습니다.
10) 내 mobileprovision 파일 내용에 자격이 올바르게 포함되어 있습니다 (번호와 도메인을 스크램블했지만 구조는 동일합니다).
<key>application-identifier</key>
<string>12355456A7.com.whatever.tinker</string>
<key>aps-environment</key>
<string>development</string>
<key>get-task-allow</key>
<true/>
<key>keychain-access-groups</key>
<array>
<string>12355456A7.*</string>
</array>
/ end 업데이트
내 장치에서 이것을 실행하려고하면 Xcode 출력에 다음 오류가 발생합니다.
2012-06-11 12:45:23.762 Tinker6[13332:707] Failed to get token, error:
Error Domain=NSCocoaErrorDomain Code=3000 "no valid 'aps-environment'
entitlement string found for application" UserInfo=0x24a3b0
{NSLocalizedDescription=no valid 'aps-environment' entitlement string
found for application}
나는 get-task-allow를 NO, aps-environment to production, 네 가지 가능한 조합 모두 같은 것으로 설정하려고 시도했습니다.
이걸 어떻게 지나칠 수 있습니까? 이에 대한 결정적인 문서는 어디에 있습니까?
- 추가 배경은 다음과 같습니다 -
* 번들 ID에 관해서는 프로비저닝 프로파일의 앱 ID 및 프로파일 ID와 관련하여 어떻게 설정해야하는지 명확하지 않습니다. App Ids의 Provisioning portal에서 나는 이것을 가지고 있습니다 (수와 도메인을 스크램블했습니다).
그리고 두 곳의 번들 ID가 설정되어 있습니다.
나는 이것이 정확하거나 확실하지 않거나 하나 또는 둘 다 12355456A7.com.whatever.tinker로 설정 해야하는지 여부는 확실하지 않지만 프로세스 초기 단계에서 성공하지 못했습니다.
참고 비슷한 제목을 가진 게시물이 많이 있다는 것을 알고 있지만 파일 이름과 주어진 내용에 따라 모두 오래된 것으로 보이며 해결책 중 어느 것도 유용하지 않은 것으로 보입니다. 내가 제공 한 세부 수준이 높으면 품질 응답이 보장되기를 바랍니다. 나는 가능한 한 빨리 현상금을 할당 할 것이며 해결책으로 이어지는 고품질의 답변을 제공하면 현상금을 수여 할뿐만 아니라 트위터와 내 블로그를 통해 답변을 홍보 할 것입니다. 특히 크로스 포스트 게시물을 게시하는 경우 블로그 또는 다른 게시물에 프로비저닝 및 기타 항목을 포함하여 간단한 푸시 알림 앱을 작동 시키는 정확한 500 단계가 있습니다.