>백엔드 개발 >PHP 튜토리얼 >앱이 iOS에서 백그라운드 모드에 있을 때 GCM 알림이 수신되지 않는 문제를 해결하는 방법은 무엇입니까?

앱이 iOS에서 백그라운드 모드에 있을 때 GCM 알림이 수신되지 않는 문제를 해결하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-10-20 15:28:30450검색

How to Resolve GCM Notifications Not Received When App Is in Background Mode in iOS?

iOS에서 앱이 백그라운드 모드일 때 GCM 알림을 받지 못함

다음으로 인해 앱이 백그라운드 모드일 때 알림을 받지 못할 수 있습니다. 다음 두 가지 이유:

  1. 잘못된 백그라운드 알림 구성: 앱이 백그라운드에 있는 동안 알림을 받으려면 Content-Available을 true로 구성하고 0이 아닌 값을 설정해야 합니다. PHP 스크립트의 우선순위.
  2. GCM 서비스 연결 해제: 푸시 알림을 받으려면 앱이 백그라운드로 들어갈 때 GCM 서비스가 연결되어 있어야 합니다. AppDelegate.m 파일에서 applicationDidEnterBackground 메소드에 GCM 서비스에 다시 연결하기 위한 코드가 포함되어 있는지 확인하세요.

해결책:

PHP 파일에 다음을 추가하세요. $post 배열에 다음을 추가합니다.

<code class="php">'content_available' => true,
'priority' => 'high',</code>

또한 본문 필드를 포함하도록 $data 배열을 업데이트합니다.

<code class="php">$data = array( 'message' => 'Hello World!', 'body' => 'Hello World!');</code>

AppDelegate.m 파일에서 다음을 확인합니다. applicationDidEnterBackground 메소드에 코드가 있습니다.

<code class="objective-c">[[GCMService sharedInstance] connectWithHandler:^(NSError *error) {
    if (error) {
        NSLog(@"Could not connect to GCM: %@", error.localizedDescription);
    } else {
        _connectedToGCM = true;
        NSLog(@"Connected to GCM");
    }
}];</code>

이러한 변경 사항을 구현하면 이제 앱이 백그라운드에 있을 때에도 알림을 받을 수 있습니다.

위 내용은 앱이 iOS에서 백그라운드 모드에 있을 때 GCM 알림이 수신되지 않는 문제를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.