0

私は奇妙な問題があります。私はAzure通知ハブを使用してXamarinフォームアプリ(iOS)に通知を送信しています。すべてが一つの特定の場合を除いて動作します:ユーザーがアプリアイコンをタップするとiOS Xamarin FormsアプリでAzureモバイルプッシュ通知が発生しない

これは動作します:

ケース1:

アプリケーションが実行されている - >プッシュnotificaitonが送信される - >私はDidReceiveRemoteNotificationコールバックにそれを得る - >私は、ポップアップを表示します(良い)

ケース2

アプリケーションを中断し、バックグラウンドで実行される - >プッシュ通知が送信されます - >私が一番上に自分の携帯電話上のnotoifcationと赤バッジの更新はアプリのアイコンをagains取得 - >

ユーザーは、上部の通知をタップアプリが開き、私はDidReceiveRemoteNotificationイベント(良い)

を取得する場合、ユーザは、通知を無視し、単にアプリのアイコンをタップすると - >何も起こりません???

この通知をどうにかしてキャプチャする必要があり、なぜ表示されないのかわかりません。私はしばらくの間、グーグル・グーグルで役に立たなかった。私が持っているもの

私はこのようなメッセージを送っています「リモートnotificaitons」を持っているし、「背景フェッチ」バックグラウンドモードで

をチェックさ:{「APS」:{「警告」: "通知

ユーザーが通知ではなくアプリのアイコンをタップしたときに、なぜこの通知が行われないのですか?アプリでこの通知をどのように保留しますか?何が欠けているのですか

答えて

2

バックグラウンドで通知を受け取ったときにアプリに通知させたい場合は、既に行ったようにバックグラウンドフェッチを設定する必要がありますが、ペイロードには「content-利用可能 "としています。システム(iOS版)がこの値には(バックグラウンドで)それを覚ますだろうし、あなたが更新する必要があります任意の情報を取得するために30秒を持っているだろうとアプリの通知を受けた

{ 
    "aps" : { 
     "content-available" : 1, 
     "alert": "We have something great for you!!" 
    }, 
    "content-id" : 1015 
} 

このイベントを処理するデリゲートメソッドを使用すると、「コンテンツID」の値を取得し、あなたが必要な場合は、サーバーからデータを取得します上記の例のペイロードからDidReceiveRemoteNotification

です。

サイレント通知も同様ですが、警告は省略します。これによりアプリにコンテンツを更新するよう指示できます。ユーザーに通知する必要がある場合は、ローカル通知を使用するだけです。

この詳細については、hereをご覧ください。

+0

ありがとうございました。私は実際にそれをすでに理解しており、デバッグ中に動作します。つまり、ブレークポイントにヒットします。しかし、私はデバッグせずに私の携帯電話を実行すると、まだ動作しません。私はそれがアプリケーション自体のものだと思う、私は調査する必要があります。私はそれが完全にテストされたら答えとしてマークします – fenix2222

関連する問題