문제

푸시 알림을 사용하는 iPhone 앱이 있습니다.

페이로드에서 몇 가지 사항을 지정합니다.

  • 메시지 본문
  • 소리
  • 사용자가 알림에서 앱을 시작할 수 있기를 원하지 않기 때문에 Action-Loc-Key

알림은 내 아이폰에 잘 들어가고 있습니다. 버튼이없는 메시지가 표시됩니다. 따라서 몸과 액션-락 키는 잘 작동합니다. 그러나 그것은 소리가 나지 않습니다.

그러나 문제 해결 중에 알아 차린 몇 가지 사항이 있습니다.

  1. 응용 프로그램 : didreceiveremotenotification을 구현하면 모든 것이 잘 보입니다. 사전 인수에는 사운드의 키가 포함되어 있으며, 그 값은 실제로 내가 재생하려는 파일의 이름입니다.
  2. 사운드 파일 자체는 앱 내부에서 재생되면 (Bubblelevel 샘플의 Soundeffect 클래스 사용)가 잘 작동하기 때문에 "작동"합니다.

이 두 가지 사실에도 불구하고 사운드 효과는 단순히 재생되지 않습니다.

설정 앱에서 모든 것이 올바르게 보입니다. 앱에 푸시가 켜져 있으며 "사운드"와 "알림"이 모두 설정되어 있습니다.

iPhone 문서 센터는 QuickTime을 사용하여 파일의 형식을 살펴볼 것을 제안합니다. 이것이 어떻게 생겼는지입니다.

alt text

마지막으로 Xcode 에서이 파일의 정보를 보면 파일 유형이 단순히 "파일"이라고 표시됩니다. 내가 말할 수있는 것에서 목록에 오디오 CAF 옵션이 없다. 나는 오디오 웨이브를 시도했지만 (사운드 엔지니어는 원본 파일이 wavs라고 말했지만) 아무것도 바꾸지 않았습니다.

또한 코드 :

- (void)applicationDidFinishLaunching:(UIApplication *)application {

// view controller set up stuff
    // ...

[[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeSound)];

}

도움이 되었습니까?

해결책

나는 JSON도 게시 했어야했는데, 나는 그것을 잘못 구성하고 있다는 것이 밝혀졌다. DidreceieVeremote 알림에서 작동 한 이유는 B/C I가 JSON을 직접 구문 분석하고 있었기 때문입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top