2014-04-29 14 views
11

Moja aplikacja zawiera sekcję powiadomień, a suma powiadomień jest wyświetlana w postaci liczby znaczków na ikonie aplikacji. Gdy użytkownik uzyskuje dostęp do powiadomień, liczba znaczków zmniejsza się. Załóżmy, że użytkownik teraz odinstalowuje kompilację i ponownie ją instaluje. Liczba znaczków jest wyświetlana bezpośrednio na ikonie aplikacji, nawet jeśli użytkownik nie otworzył aplikacji. Ta wyświetlana liczba znaczków jest taka sama, jak w chwili odinstalowania aplikacji. Liczba znaczków powinna być wyświetlana po otwarciu aplikacji przez użytkownika i przejściu do sekcji powiadomień.Liczba znaczków jest usuwana po usunięciu aplikacji i ponownym zainstalowaniu.

+0

mam ten sam problem przed kilka dni temu (aplikacja na testFlight) ..Nie wiem, ale usunąłem i przesłałem kompilację aplikacji w testFlight, a także usunąłem i ponownie zainstalowałem aplikację na moim urządzeniu i działa ona dla mnie. – iPatel

+0

Moja kompilacja jest obecna w appstore i niedawno została przesłana nowa wersja. – user3568907

+0

następnie spróbuj usunąć aplikację z urządzenia i ponownie zainstalować na urządzeniu ... zrobić tak samo jak 3-4 razy może być ... działa. :) życzę powodzenia. :) – iPatel

Odpowiedz

9

Mam ten sam problem przed kilkoma dniami, kiedy testowałem aplikację z testFlight.

Zasadniczo ten problem może wystąpić po usunięciu aplikacji (gdy był wyświetlany jakiś numer identyfikacyjny) i ponownie ją zainstalować. Trudno jednak powiedzieć, że gdzie jest rzeczywisty problem.

Przeczytaj co Apple's official documentation is saying.

Resetowanie powiadomienia push Uprawnienia Alert na iOS Pierwszy czas push-włączone rejestry App dla powiadomień Push, iOS prosi użytkownika jeśli chcą otrzymać informację dla tej aplikacji. Gdy użytkownik zareagował na ten alert, nie zostanie on ponownie wyświetlony, dopóki urządzenie nie zostanie przywrócone lub aplikacja zostanie odinstalowana co najmniej jeden dzień.

Jeśli chcesz przeprowadzić symulację pierwszego uruchomienia aplikacji, możesz zostawić odinstalowaną aplikację na jeden dzień. Możesz osiągnąć to ostatnie bez oczekiwania na dzień, ustawiając zegar systemowy na dzień lub jeszcze bardziej , całkowicie wyłączając urządzenie, a następnie włączając urządzenie ponownie, .

Istnieją pewne sugestie z mojego doświadczenia:

  • OFF Twój formularz zgłoszeniowy ustawienia
  • i ustawić znaczek 0 po stronie serwera, a następnie usunąć i ponownie zainstalować aplikację z urządzenia. - Po zakończeniu instalacji uruchom aplikację
  • Po uruchomieniu aplikacji usuń aplikację z urządzenia, a następnie zresetuj plakietkę na serwerze 1 i ON swój formularz powiadomienia ustawienia.

Nie jestem pewien, ale może to zadziałać. :)

+0

Moja aplikacja jest w sklepie z aplikacjami. – user3568907

+0

Czy możesz mi powiedzieć, która metoda zadzwoni. jeśli aplikacja odinstalowuje – user3568907

+2

@ user3568907 Podczas odinstalowywania nie jest wywoływana żadna metoda. –

7

Liczba znaczków jest utrzymywana przez system operacyjny, niezależnie od aplikacji. Po odinstalowaniu (usunięciu) aplikacji niektóre wartości są zachowywane przez system operacyjny, w tym liczba znaczków. Po odinstalowaniu aplikacji nie jest wywoływana żadna metoda ani skrypt programisty. Musisz zaakceptować to ograniczenie lub zmienić projekt aplikacji, by przemyśleć i rozwiązać ten problem.

+0

więc mam inny sposób na usunięcie badgecount – user3568907

+0

@ user3568907 Tylko po uruchomieniu aplikacji. –

4

Wykonaj poniżej kod w didFinishLaunchingWithOptions

if (![[NSUserDefaults standardUserDefaults] objectForKey:@"is_first_time"]) 
{   
[application cancelAllLocalNotifications]; 
// Restart the Local Notifications list 
application.applicationIconBadgeNumber = 0; 
[[NSUserDefaults standardUserDefaults] setObject:[NSNumber numberWithBool:YES] forKey:@"is_first_time"]; } 
Powiązane problemy