1

iOS 앱에 자동 알림을 보내고 싶습니다. 여기에 FCM을 구현했습니다. 앱이 백그라운드에서 실행되는 동안 앱이 FCM으로부터 알림을 받으면 일부 작업을 수행해야합니다. 그것에 대해FCM 메시지 콘솔을 통해 백그라운드에서 내 iOS 앱에 알림을 보냅니다.

, 실행 프로세스는 방법에 들어갈 것이다는

-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler 


라고하지만 문제는 사용자가 알림을 도청 할 때까지이 방법으로 입력하지 않는 것입니다.

당 (FCM documents)에 따라 앱을 백그라운드에서 활성화하려면 key_value가 true 인 content_available 매개 변수를 전달해야합니다. FCM Compose 메시지 콘솔 (custom data)을 통해이 정보를 전송할 때 사용자가 알림을 탭하기 전까지는 앱이 깨어나지 않고 백그라운드에서 활성화되지 않습니다. 나는 내가받는 모든 알림이 보통 알림인지 아닌지 알 것입니다. 그래서 FCM 구현 및 전송 통지가 완벽하게 작동하는 것 같습니다.

나는 모든 가능한 스택 오버 플로우 솔루션을 제공하고 언급 한 모든 FCM 문서를 따라 왔습니다. 심지어 원격 알림을 보내는 사과 문서를 따라했습니다. 마지막으로 FCM 메시지 콘솔을 통해 "content_available"을 전송합니다. 그러나 침묵하는 통지가되고 있지 않으며 나는 사용자가 두드리기 위하여 가지고 간 정상적인 통보로, didReceiveRemoteNotification 방법에 들어가기 위하여 통보를 받고있다. FCM은 (자동 통지 등) 배경에서 알림을 수신하거나하지 통해

내가 & here

는도 가능하며,이 here 같은 많은 링크, here을 언급했다? 또는이를 구현하는 다른 방법?

+0

'content_available'는 페이로드의'notification'과'data' 둘 다에 있어야하는 매개 변수입니다. 커스텀 데이터에 키 - 값 쌍을 넣으면 그것을'data' 메시지 페이로드 안에 넣습니다. –

+0

오케이, 나 한번 시험 해보 죠. – Moxarth

+1

나는 firebase-support에 연락하여 "알림 콘솔에 자동 알림을 전송할 수 없습니다."라고 말하면서 사용자에게 표시 할 캠페인을 보내는 것이 가장 기본적인 방법이며, 자동 알림을 보내려면 FCM API를 대신 사용하십시오. " FCM API를 사용하는 방법은 무엇입니까? 그걸하는 법을 아십니까? – Moxarth

답변

1

나는 이것을위한 해결책을 가지고있다. 그냥이 link 및 그 대답을 따르십시오.

및 우편 배달부

{ 
    "to":"eEBrg.... .... .... .... (FCM Token)", 
    "priority": "normal", 
    "content_available": true, 
    "notification":{ 
(do not send body here if you want to send the silent notification) 
     "requesttype":"ring" // optional 
    } 
} 

이 같은 JSON 본문을 입력 ... 그리고 당신의 응용 프로그램은 백그라운드에서 일어나되고 방법 didReceiveRemoteNotification에 들어갑니다.