0

私たちはOneSignalをプロジェクトに統合しています。我々は、初期化の方法は、次にViewController.mアプリケーションがアクティブな間に通知ペイロードを受信

[OneSignal registerForPushNotifications]; 

から私たちは、私たちは今、人生は良いですOSNotificationDisplayTypeNone

を設定しているアプリの警告ボックスに表示したくない

[OneSignal initWithLaunchOptions:launchOptions appId:@"XXXXX" 
     handleNotificationReceived:^(OSNotification *notification) { 
     } handleNotificationAction:^(OSNotificationOpenedResult *result) { 
      OSNotificationPayload* payload = result.notification.payload; 
      NSLog(@"Title = %@ and data = %@",payload.title,payload.additionalData); 
     } settings:@{kOSSettingsKeyInFocusDisplayOption : @(OSNotificationDisplayTypeNone), kOSSettingsKeyAutoPrompt : @NO}]; 

ですAppがアクティブでないときに通知を受け取ると、didReceiveRemoteNotificationが呼び出され、ペイロードが処理されます。

問題は、アプリケーションがアクティブな場合です。その場合は、ハンドラが呼び出されなかったかどうかは、ReceiveRemoteNotificationではありませんでした。アプリがアクティブで通知が届いたら、特定のものを点滅させたいこれをどのように達成するのですか?

+0

「didReceiveRemoteNotification」は、あなたのアプリがアクティブかバックグラウンドであっても呼び出されるべきではありません。なぜそれが呼び出されないのかわからない場合は、ここにコードを表示してみてください。 – Tj3n

+2

['didReceiveRemoteNotification'](https://developer.apple.com/reference/アプリケーションがアクティブなときに呼び出されますが、[application:didReceiveRemoteNotification:fetchCompletionHandler](https://developer.apple.com/reference/uikit/uiapplicationdelegate/1623013-application?language=1623117-application?language = objc) objc)は、バックグラウンドで呼び出されます。 – iphonic

+0

プッシュ通知用にアプリを登録するにはどうすればよいですか?あなたは 'deviceToken'を受け取りますか? – Adeel

答えて

0

latest OneSignal 2.2.2 iOS SDKを使用していることを確認してください。このバージョンでは、application:didReceiveRemoteNotification:fetchCompletionHand‌​ler:セレクタが起動しない場合が修正されています。

AppDelegate.mapplication:didFinishLaunchingWithOptions:セレクタから[OneSignal initWithLaunchOptions...]に電話することも重要です。これを外部に呼び出すと、OneSignal SDKがイベントを逃すことがあり、handleNotificationReceivedブロックが実行されないことがあります。

+0

これはまだ動作していないようです... –

関連する問題