1

だから、これが私のライフストーリーで、何が悪いのか理解できないようです!!!

すでにストアにあるアプリがありますが、奇妙な問題があり、結果がまちまちです。

メインビューに2つのスイッチがあり、どちらも繰り返し間隔でローカル通知を制御します。

これで、スイッチを正しく設定して、準備が整いました。(私は推測する)。ただし、繰り返し間隔がスケジュールされている場合、ユーザーが通知を受け取らないことを決定したときに、それらを再度キャンセルする必要があります。だから、私は私のスイッチをそのようにコーディングしました:

- (void)applicationDidEnterBackground:(UIApplication *)application
{
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
BOOL switchOn = [userDefaults boolForKey:@"switchO"];

if (switchOn) {

    [self Firstnotif];
    [self Secondnotif];
    [self Thirdnotif];
    [self Lastnotif];

}

else {   [[UIApplication sharedApplication] cancelAllLocalNotifications];    }


 BOOL switchOn2 = [userDefaults boolForKey:@"switchO2"];

if (switchOn2) {


[self Firstnotif];


}

else {   [[UIApplication sharedApplication] cancelAllLocalNotifications];    }


}

Firstnotif両方のスイッチでこの方法を2回使用したことに注意してください。

私の問題は次のとおりです。

  • 以前はスイッチが1つしかありませんでしたが、最初のスイッチをオンにしてこれら4つの通知を受信すると、すべてのユーザーで機能するわけではありません。だから私は彼らにそれをオフにし、ホームボタンを押し、アプリをもう一度開いてそれをオンにし、ホームボタンをもう一度押すように言います。できます!!!!なぜ?

  • 今、私は別のスイッチを追加したので、新しい混合結果が表示されています。2番目のスイッチは、繰り返し間隔で最初の通知のみを起動することです。うまくいくと言う人もいれば、うまくいかないと言う人もいます。他の人は、私が他の人を回すとき、それはするし、しないと言います。彼らはここで何に直面していますか?

私の質問、

繰り返し間隔を正しい方法でキャンセルしていますか?

私のアプリの何が問題になっている可能性がありますか?必要に応じて、さらに多くのコードを提供します。

私はこれらの問題に何週間も費やして運がなかったので、あなたの意見に感謝します。

4

1 に答える 1

1

解決しました!

applicationDidBecomeActiveメソッドの下にあるキャンセル リクエストを差し替え、削除しましたelse

何だと思う?出来た!!!:)

于 2013-01-31T13:59:06.547 に答える