2

まさに私が欲しかったのは、通知アラートスタイルを「アラート」に変更することですが、プログラムでそれを行うことはできないことがわかりました。

それでは、シナリオに移りましょう。

UILocalNotificationセットがありrepeatinterval = kCFCalendarUnitMinuteます。したがって、キャンセルしないと、毎分通知ウィンドウに新しい通知が表示されます。

ここで、デバイスを10分間アイドル状態にした後、繰り返し間隔で1つの通知を設定しましたが、10の通知が表示されます。

主な質問:最後の通知のみを表示する方法はありますか?

同じように1分の例を挙げたように、7日ごとに繰り返す例を見てみましょう。通知をキャンセルすると、来週の通知もキャンセルされます。

これらの10の通知すべてに共通するのは、毎回異なる値をfireDate持つことだけです。nextFireDate

このため、アラートスタイルを「アラート」に切り替えたかったのですが、コードで変更できないためです。

起動するたびにユーザーにアラートを送信して、通知アラートスタイルを「アラート」に変更する必要があります。これは、ユーザーが変更するまで、デフォルトではバナーです。

だから今私は依存関係を持つ2つの質問があります:

  1. 現在の通知アラートスタイル、つまりNone, Banner, Alertsコーディングを介して現在のアプリを確認する方法はありますか?
  2. 1の場合、「はい」の場合、アプリからすぐに通知アラートスタイルの設定画面にユーザーを直接誘導する方法はありますか。

注: ポイント2の場合。

私の頭の中にあることの1つは、「設定->通知->MyAlarmApp->アラートスタイル->アラート」に到達するためのパスをユーザーに表示することです。

他の提案は大歓迎です。

4

2 に答える 2

3

プログラムで通知のスタイルを変更または検出することはできません。設定アプリでこれを変更するのはユーザーのみです。

また、設定アプリを開くことはできなくなります。そのため、通知が表示されるのはユーザー次第です。それは完全にあなたのコントロールの外にあります。

あなたが述べたように、アプリの通知の表示方法を変更するようにユーザーに依頼することができます。

于 2012-10-24T09:15:57.037 に答える
1

1.アプリケーションは、これを使用して有効になっている通知タイプを確認できます。

UIRemoteNotificationType types = [[UIApplication sharedApplication] enabledRemoteNotificationTypes];

2.プログラムで設定アプリ画面を直接開くことはできません。

これは、iOSバージョン5.0〜5.0.1で使用できます。

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs://"]];

しかし、その後iOS5.1で減価償却されました。iOS5.1以降ではご利用いただけません。

于 2014-06-19T10:33:21.117 に答える