iOS 7 beta 3 – oto cały dziennik zmian

  iOS beta 7 3 została uruchomiona dziś wieczorem przez firmę Apple, a poniżej przedstawiłeś cały dziennik zmian tej kompilacji dostępnej dla iDevices. Ogólnie rzecz biorąc, firma Apple naprawiła część problemów istniejących w wersji beta 2, poprawiła ogólną wydajność i wprowadziła kilka nowych rzeczy, które są przydatne tylko dla programistów, ale miejmy nadzieję, dlaczego widzimy tutaj sporo zmian, o których nie wspomniano . Jeśli chcesz mieć zarejestrowany UDID dla iOS 7, chciałbym poinformować, że zarejestrowani członkowie iDevice.ro korzystają z tego przywileju na podstawie rejestracji subskrypcji i masz więcej informacji na ich temat na tej stronie.

Wprowadzenie

iOS SDK 7.0 zapewnia obsługę tworzenia aplikacji na iOS i zawiera pełny zestaw narzędzi Xcode, kompilatorów i struktur do tworzenia aplikacji dla iOS i OS X. Narzędzia te obejmują między innymi Xcode IDE i narzędzie do analizy Instruments.

Za pomocą tego oprogramowania możesz tworzyć aplikacje na iPhone'a, iPada lub iPoda touch z systemem iOS 7. Możesz także testować swoje aplikacje za pomocą dołączonego symulatora iOS, który obsługuje iOS 7. iOS SDK 7.0 wymaga komputera Mac z systemem OS X 10.8.4 ( Mountain Lion) lub nowszy.

Ta wersja systemu iOS jest przeznaczona do instalacji wyłącznie na urządzeniach zarejestrowanych w programie Apple Developer Program. Próba zainstalowania tej wersji systemu iOS w nieautoryzowany sposób może spowodować, że Twoje urządzenie stanie się niezdatne do użytku.

Więcej informacji i dodatkowe zasoby wsparcia znajdziesz na stronie http://developer.apple.com/programs/ios/.

Zgłaszanie błędów

Aby zgłosić wszelkie błędy niewymienione w Uwagi i znane problemy sekcji, skorzystaj z narzędzia Apple Bug Reporter w witrynie Apple Developer (http://developer.apple.com/bugreporter/). Ponadto możesz omówić te problemy i pakiet iOS SDK 7.0 na forach programistów Apple:http://devforums.apple.com. Aby uzyskać więcej informacji o iCloud dla programistów, przejdź do http://developer.apple.com/icloud.

Uwagi i znane problemy

Poniższe problemy dotyczą używania zestawu SDK systemu iOS 7.0 do tworzenia kodu.

zrzut

Uwagi

  • AirDrop w iOS 7 Seed 2 lub nowszym nie jest kompatybilny z AirDrop w iOS 7 Seed 1.
  • Kontakty Tylko wsparcie wymaga, aby:
    • Jesteś zalogowany do iCloud.
    • Nadawca i odbiorca mają swoje adresy e-mail Apple ID w Kontaktach na swoich urządzeniach.

Znane problemy

  • Tylko kontakt wymaga obecnie aktywnego połączenia z Internetem.
  • App Store powinien zapewniać możliwość znalezienia aplikacji umożliwiającej otwarcie otrzymanego dokumentu na podstawie identyfikatora UTI (Uniform Type Identifier) ​​dokumentu. Obecnie wyświetlany jest tylko pusty ekran.

AirPlay

Naprawiono w Seed 3

  • Podczas wysyłania muzyki do Apple TV przejście do następnego utworu może się nie powieść.
  • Głośność dźwięku może gwałtownie i nieoczekiwanie wzrosnąć podczas AirPlay.

Fundacja AV

Uwagi

AVCaptureSession teraz korzysta z Twojej aplikacji AVAudioSession domyślnie.

Kalendarz

Znane problemy

  • Kalendarze i przypomnienia iCloud mogą zostać zduplikowane po dodaniu nowych wydarzeń.Rozwiązanie: ukryj zduplikowany kalendarz, a synchronizacja będzie kontynuowana normalnie.
  • Wydarzenia kalendarza iCloud mogą nie być synchronizowane poprzez pobieranie, przesyłanie lub ręczne odświeżanie zgodnie z oczekiwaniami.Rozwiązanie: utwórz nowe wydarzenie lub edytuj istniejące, aby uruchomić synchronizację.

Wyświetlacz samochodu

Znane problemy

Obsługa wyświetlacza samochodowego zostanie zapewniona, gdy dostępne będą zgodne systemy.

Kontakt

Znane problemy

Niektóre zdjęcia w wysokiej rozdzielczości nie zostaną zsynchronizowane (przez iCloud i inne usługi), jeśli zostaną ustawione jako zdjęcie identyfikatora dzwoniącego kontaktu.

Rozwiązanie: użyj zdjęcia w niższej rozdzielczości.

Animacja podstawowa

Uwagi

Podczas UIViewGroupOpacity klucz nie jest obecny, wartość domyślna to teraz TAK. Domyślną wartością było wcześniej NIE.

Oznacza to, że widoki podrzędne przezroczystego widoku zostaną najpierw połączone z tym przezroczystym widokiem, a następnie wstępnie złożone poddrzewo zostanie narysowane jako całość na tle. Ustawienie NIE skutkuje tańszym, ale także mniej dokładnym komponowaniem: każdy widok w przezroczystym poddrzewie jest łączony z tym, co znajduje się pod nim, zgodnie z przezroczystością rodzica, w normalnej kolejności algorytmu malarza.

iCloud

Uwagi

  • Pęk kluczy iCloud w systemie iOS 7 Seed 3 nie jest wstecznie kompatybilny z systemami iOS 7 Seed 2 i OS X Mavericks Seed 2.Jeśli w systemie iOS 7 Seed 2 włączono funkcję pęku kluczy i/lub przywracania pęku kluczy iCloud, obie funkcje zostaną wyłączone po aktualizacji do iOS 7 Seed 3.

    Po aktualizacji do iOS 7 Seed 3 przejdź do Ustawienia > iCloud > Pęk kluczy i włącz ponownie Pęk kluczy iCloud na swoich urządzeniach.

    Więcej szczegółów można znaleźć w uwagach do wydania systemu OS X 10.9.

  • Blokada aktywacji, nowa funkcja Znajdź mój iPhone, jest włączana automatycznie, gdy funkcja Znajdź mój iPhone jest włączona na dowolnym urządzeniu z systemem iOS 7. Blokada aktywacji wymaga od użytkowników wprowadzenia identyfikatora Apple ID i hasła w celu wyłączenia funkcji Znajdź mój iPhone i wylogowania się z usługi iCloud , wymazać urządzenie lub ponownie aktywować urządzenie po wymazaniu. Ważne jest, aby przed przekazaniem urządzenia nowemu użytkownikowi wykonać jedną z następujących czynności:
    • Wyloguj się z iCloud.
    • Wyłącz blokadę aktywacji w Ustawieniach > iCloud > Znajdź mój iPhone.

Naprawiono w Seed 3

  • Klawiatura nie jest widoczna w oknie dialogowym zatwierdzania pęku kluczy iCloud po odblokowaniu ekranu.Rozwiązanie: Stuknij opcję Nie zezwalaj lub Zezwalaj. Klawiatura zostanie zaprezentowana następnym razem.
  • Jeśli zmienisz kraj powiązany z numerem telefonu w Ustawieniach > iCloud > Nazwa konta > Pęk kluczy, nie będziesz mógł zobaczyć zmienionej nazwy/kodu kraju.Rozwiązanie: wyłącz opcję Przywracanie pęku kluczy, a następnie włącz ją ponownie.
  • Jeśli masz opcję „Resetuj całą zawartość i ustawienia” na urządzeniu (Ustawienia > Ogólne > Resetuj), które:
    • Ma skonfigurowane konto iCloud
    • Ma włączoną blokadę aktywacji funkcji Znajdź mój iPhone
    • Nie przechodził wcześniej do opcji Ustawienia > iCloud

    nie będziesz proszony o podanie danych uwierzytelniających iCloud w celu wyłączenia blokady aktywacji przed usunięciem. Po wymazaniu urządzenia aktywacja zostanie zablokowana.

    Rozwiązanie: Usuń konto iCloud przed wymazaniem urządzenia. Jeśli jesteś w tym stanie, wprowadź dane logowania do konta iCloud, aby odblokować urządzenie.

  • Użytkownicy pęku kluczy iCloud, którzy skonfigurują dodatkowe urządzenie, otrzymają prośbę o zatwierdzenie do innych urządzeń z włączoną funkcją pęku kluczy iCloud. Prośba o zatwierdzenie nie zostanie wyświetlona, ​​jeśli ich ekrany są wyłączone, a urządzenia są bezczynne.Rozwiązanie: Obudź dowolne urządzenie równorzędne, aby zaakceptować prośbę o zatwierdzenie.
  • W systemie iOS 7 przełączniki Znajdź mój iPhone i Zakładki nie są już obsługiwane na dodatkowych kontach iCloud. Jeśli zaktualizujesz urządzenie, włączając dowolną z tych opcji na dodatkowym koncie iCloud, zostaną one wyłączone bez powiadomienia użytkownika.Rozwiązanie: skonfiguruj główne konto iCloud w Ustawieniach/iCloud, a następnie włącz opcję Znajdź mój iPhone lub Zakładki.
  • W rzadkich przypadkach użytkownicy mogą napotkać trudności z konfiguracją pęku kluczy iCloud na niektórych swoich urządzeniach.Rozwiązanie: tymczasowy przycisk Resetuj pęk kluczy iCloud jest dostępny w Ustawieniach iCloud > Konto > Bezpieczeństwo konta.

Znane problemy

  • Czasami po wyłączeniu pęku kluczy iCloud może nie być możliwe jego ponowne włączenie.Rozwiązanie: wyłącz pęk kluczy na wszystkich włączonych urządzeniach, a następnie włącz go ponownie.
  • Pęki kluczy nie są synchronizowane między urządzeniami, gdy znajdują się one w sieci bezprzewodowej z zabezpieczeniami WEP.
  • Podczas konfigurowania pęku kluczy iCloud w Asystencie ustawień na iPhonie 4 i iPhonie 4s klawiatura zakrywa pole wprowadzania kodu bezpieczeństwa iCloud i łącze Opcje zaawansowane.Rozwiązanie: przewiń w dół, aby zobaczyć ukryte wpisy.
  • Użytkownicy w Szwajcarii, Francji, Hiszpanii, Niemczech, Polsce, Finlandii i prawdopodobnie w niektórych innych krajach nie będą mogli przywrócić swoich pęków kluczy za pomocą weryfikacji numeru telefonu.Rozwiązanie: użyj losowego kodu zabezpieczającego.
  • Karty kredytowe usunięte w Ustawieniach Safari > Autouzupełnianie są usuwane z urządzenia, ale nie z innych urządzeń.Rozwiązanie: wprowadzenie kolejnej zmiany lokalnej (np. dodanie karty kredytowej) wymusi synchronizację.
  • Użytkownicy wylogowujący się z usługi iCloud poprzez usunięcie konta iCloud, wymazanie całej zawartości i ustawień lub wymazanie urządzenia za pomocą funkcji Znajdź mój iPhone i ponowne zalogowanie się nie będą wyświetlani z prawidłowymi ekranami konfiguracji pęku kluczy iCloud.Obejście: Włącz pęk kluczy iCloud, a następnie zatwierdź za pomocą kodu bezpieczeństwa iCloud > Zapomniałem kodu bezpieczeństwa > Zresetuj pęk kluczy iCloud.
  • Użytkownicy, którzy mają jedno urządzenie z włączonym pękiem kluczy iCloud, nie zobaczą prawidłowych ekranów konfiguracji pęku kluczy iCloud po przywróceniu z kopii zapasowej.Obejście: Włącz pęk kluczy iCloud, a następnie zatwierdź za pomocą kodu bezpieczeństwa iCloud > Zapomniałem kodu bezpieczeństwa > Zresetuj pęk kluczy iCloud.
  • Niezakupione pliki ePub i PDF nie zostaną przywrócone podczas odtwarzania urządzenia z systemem iOS 7 przy użyciu usługi iCloud z kopią zapasową systemu wcześniejszego niż iOS 7. Zakupiona zawartość zostanie przywrócona bez problemu.Rozwiązanie: użyj synchronizacji iTunes.

MAPK

Uwagi

Jeśli połączenia do renderInContext na warstwie podkładowej an MKMapView są wykonane z wątku głównego, należy je wyeliminować lub przenieść do wątku głównego. Niezastosowanie się do tego może spowodować awarię aplikacji. Zamiast używać renderInContext, użyj nowego MKMapSnapshotter Pszczoła.

Wiadomości

Naprawiono w Seed 3

  • Podczas czystej instalacji uruchomienie Wiadomości powoduje wyświetlenie pustej listy wiadomości zamiast nowego okna tworzenia wiadomości.
  • Istniejąca baza danych Wiadomości może zostać usunięta po przywróceniu lub uaktualnieniu, jeśli:
    • Nie logujesz się do iCloud podczas korzystania z Asystenta ustawień.
    • Konta iMessage i iCloud korzystają z różnych identyfikatorów.
  • Aplikacja Wiadomości ulega awarii po przejrzeniu załączników w dwóch oddzielnych wątkach.Rozwiązanie: załączniki będą widoczne po ponownym uruchomieniu Wiadomości.

Łączność wielopunktowa

Uwagi

Wiele aktualizacji do MCSession Interfejsy API są zawarte w tym materiale siewnym. Interfejsy API działają teraz tak, jak zostały zaprezentowane na WWDC. Najważniejsze zmiany i ulepszenia obejmują:

  • Następująca nowa metoda włączona MCSession Został wdrożony: - (NSOutputStream *)startStreamWithName:(NSString *)streamName toPeer:(MCPeerID *)peerID error:(NSError **)errorTa metoda delegowania została zaimplementowana: - (void)session:(MCSession *)session didReceiveStream:(NSInputStream *)stream withName:(NSString *)streamName fromPeer:(MCPeerID *)peerID
  • Następująca nowa metoda włączona MCSession Został wdrożony: - (NSProgress *)sendResourceAtURL:(NSURL *)resourceURL withName:(NSString *)resourceName toPeer:(MCPeerID *)peerID withCompletionHandler:(void(^)(NSError *error))completionHandlerMetoda delegowania, aby rozpocząć odbieranie zasobu od zdalnego peera, została zaimplementowana jako: - (void)session:(MCSession *)session didStartReceivingResourceWithName:(NSString *)resourceName fromPeer:(MCPeerID *)peerID withProgress:(NSProgress *)progress

    Metoda delegowania, aby zakończyć odbieranie zasobu od zdalnego peera i zapisać zawartość w tymczasowej lokalizacji, jest zaimplementowana w następujący sposób: - (void)session:(MCSession *)session didFinishReceivingResourceWithName:(NSString *)resourceName fromPeer:(MCPeerID *)peerID atURL:(NSURL *)localURL withError:(NSError *)error

  • MCAdvertiserAssistant to nowa klasa. Jest to wygodna klasa do implementacji Reklamodawcy, która obsługuje zaproszenia i połączenia z MCSession.
  • MCSession ma nowy initWithPeer: Metoda.
  • sendResource dodał „z” do completionHandler.
  • Limit czasu został usunięty connectPeer:withNearbyConnectionData.

Więcej informacji na temat tych interfejsów API można znaleźć w artykule „Sesja WWDC 701: Łączność wielopunktowa”.

Music Player

Naprawiono w Seed 3

MPMediaPickerController zostało wyłączone dla tego materiału siewnego. Natychmiast powróci, tak jakby użytkownik anulował wybór.

Sieci

Uwagi

  • Awaryjna sieć komórkowa to technologia, która próbuje połączyć się przez interfejs komórkowy, gdy połączenie przez interfejs Wi-Fi nie powiedzie się. Istnieje wiele przypadków, w których mogą wystąpić awarie połączenia przez Wi-Fi, na przykład modem kablowy wymagający ponownego uruchomienia lub zapora sieciowa blokująca dostęp do niektórych zasobów.Jeśli Twoja aplikacja ogranicza operacje sieciowe w sieci komórkowej, sprawdź, czy Twój kod używa odpowiedniego interfejsu API do implementacji tej zasady.

    Na przykład, jeśli Twoja aplikacja ogląda SCNetworkReachability dla kSCNetworkReachabilityFlagsIsWWAN do monitorowania dostępności sieci Wi-Fi, może ona nie działać prawidłowo w trybie rezerwowym sieci komórkowej.

    Jeśli aplikacja użyje tej metody, a następnie spróbuje się połączyć, myśląc, że uzyska połączenie przez Wi-Fi, aplikacja może przypadkowo nawiązać połączenie przez sieć komórkową. Brak kSCNetworkReachabilityFlagsIsWWAN nie gwarantuje, że Twoje połączenie nie będzie przebiegać przez sieć komórkową. Jeśli Twój kod musi wymuszać, aby połączenie nie odbywało się przez sieć komórkową, musi to określić podczas tworzenia żądania sieciowego.

    Zamiast tego CFNetwork kod za pomocą CFSocketStreamCFHTTPStreamlub podobnych interfejsów API, ustaw kCFStreamPropertyNoCellular właściwość na true w obiekcie CF przed połączeniem.

    W razie zamówieenia projektu  NSURLRequests, połączenie [request setAllowsCellularAccess: false].

    Oprócz zapewnienia, że ​​Twój kod nigdy nie zostanie połączony przez sieć komórkową ze względu na awarię sieci komórkowej, to wywołanie gwarantuje, że Twój kod nigdy nie zostanie połączony przez sieć komórkową z powodu VPN lub skomplikowanych problemów z routingiem (łączenie się z IPv6 przez sieć komórkową, ponieważ w sieci dostępny jest tylko IPv4 Wi-Fi itp.).

    Aby sprawdzić, czy aplikacja działa prawidłowo, należy wykonać test w przypadku uszkodzonej sieci Wi-Fi. Najłatwiejszym sposobem skonfigurowania uszkodzonej sieci Wi-Fi jest skonfigurowanie stacji bazowej Apple AirPort lub innego punktu dostępu Wi-Fi tak, aby przydzielała adres DHCP i pozostawiła punkt dostępu odłączony od Internetu. Innym prostym sposobem testowania jest odłączenie kabla lub linii DSL od modemu kablowego lub DLS.

  • Dwa interfejsy API sieci niskiego poziomu, które wcześniej zwracały adres MAC, teraz zwracają stałą wartość 02:00:00:00:00:00. Dane interfejsy API mają sysctl (NET_RT_IFLIST) i ioctl (SIOCGIFCONF). Programiści korzystający z wartości adresu MAC powinni migrować do identyfikatorów takich jak -[UIDevice identifierForVendor]. Ta zmiana dotyczy wszystkich aplikacji działających w systemie iOS 7.
  • Wszystkie kategorie NSURL zadania sesji są teraz zawieszane, a nie uruchamiane. Dzięki temu możesz ustawić ich stan przed rozpoczęciem zadania.

Kiosk

Naprawiono w Seed 3

Pobieranie plików w tle w kiosku, które korzysta z uwierzytelniania podstawowego lub szyfrowanego HTTP, spowoduje wyświetlenie monitu o alerty autoryzacyjne (NSURLConnectionDelegate Protocol oddzwonienia dla connectionShouldUseCredentialStorage i willSendRequestForAuthenticationChallenge nie jest poprawnie nazywany).

Środowisko uruchomieniowe Objective-C

Uwagi

W związku ze zmianami w sposobie isa pole jest zaimplementowane, *self może ulec zmianie w trakcie wyliczania (na przykład, jeśli pojemnik zostanie zachowany).

Obejście: Podczas wdrażania countByEnumeratingWithState, nie ustawiaj state->mutationsPtr = self.

Książeczka bankowa

Uwagi

  • W poprzednich wersjach pakietu SDK dla systemu iOS aplikacja Passbook nie sprawdzała całkowicie tylnych pól na kartach. Zostało to poprawione, ale oznacza to, że niektóre przepustki dodane w iOS 6.0, 6.1 i iOS 7.0 Seed 1 będą nieważne w iOS 7 Seed 2 i nowszych wersjach. Zasady walidacji nie uległy zmianie, był to po prostu błąd w walidacji w poprzednich wdrożeniach. Jeśli posiadasz przepustkę, którą mogłeś wcześniej dodać do książeczki oszczędnościowej, ale już nie możesz, sprawdź dziennik konsoli pod kątem więcej niż jednego pola z kluczem NAZWA. Klucze pól muszą być unikalne.
  • Począwszy od iOS 7 Seed 3, PKPassLibraryDidCancelAddPasses to nowy kod stanu w pliku PKPassLibraryAddPassesStatus wyliczenie. Oznacza to, że użytkownik kliknął Anuluj w alercie o dodaniu przepustek.

Safari

Znane problemy

  • Aktualizacja do iOS może zresetować ustawienia Safari do wartości domyślnych.
  • Dane uwierzytelniające witryny Safari nie zawsze są automatycznie uzupełniane między wersją mobilną i komputerową.Rozwiązanie: użyj wersji komputerowej, jeśli witryna ją oferuje.

Bezpieczeństwo

Uwagi

  • -[UIDevice uniqueIdentifier] nie jest już akceptowana w zgłoszeniach do App Store. W systemie iOS 7 aplikacje, które są już w sklepie lub na urządzeniach użytkowników, które wywołują ten usunięty interfejs API, nie będą już zwracać identyfikatora UDID. Zamiast, -[UIDevice uniqueIdentifier] zwróci 40-znakowy ciąg zaczynający się od FFFFFFFF, po którym następuje wartość szesnastkowa -[UIDevice identifierForVendor]. Ważne jest, aby rozważyć, jak wpłynie to na istniejące aplikacje. Rozważam przesłanie aktualizacji, które nie mają już dostępu do identyfikatora UDID.
  • iOS żąda teraz zgody użytkownika, aby aplikacje mogły korzystać z wejścia audio na wszystkich urządzeniach z systemem iOS 7. W przypadku urządzeń sprzedawanych w Chinach system iOS będzie również wymagał zgody użytkownika na korzystanie przez aplikacje ze sprzętu aparatu. System operacyjny wyświetli alert dotyczący zgody po ustawieniu kategorii tworzonej instancjiAVAudioSesison,  AVAudioSessionCategories który wyświetli alert AVAudioSessionCategoryRecord i AVAudioSessionCategoryPlayAndRecord.Jeśli użytkownik nie zezwoli na dostęp, dane sesji audio będą zawierać same zera (cisza). W przypadku urządzeń, w przypadku których użytkownik żąda dostępu do kamery i odmawia mu dostępu, sesja przechwytywania wideo jest wyświetlana na czarnym ekranie.
  • Interfejs API gethostuuid() został usunięty i nie zostanie przyjęty do przesłania do sklepu, niezależnie od docelowego systemu operacyjnego. W przypadku istniejących aplikacji działających w systemie iOS 7 funkcja zwróci reprezentację uuid_t identyfikatora dostawcy (-[UIDevice identifierForVendor]).

Ustawienia

Naprawiono w Seed 3

W obszarze Ogólne > Odświeżanie aplikacji w tle ustawienia poszczególnych aplikacji nie są honorowane.

ustawienie

Naprawiono w Seed 3

Po wymazaniu urządzenia w Ustawienia > Ogólne > Resetuj > Usuń całą zawartość i ustawienia, dzienniki CrashReporter nie będą już kopiowane z urządzenia na komputer.

Rozwiązanie: Przywróć urządzenie z IPSW zamiast używać opcji Usuń całą zawartość i ustawienia na urządzeniu.

Siri

Uwagi

To ziarno zawiera wersje rozwojowe nowych męskich i żeńskich głosów Siri dla amerykańskiego angielskiego i francuskiego oraz męski głos dla niemieckiego.

Obserwuj Nas

Uwagi

W przypadku korzystania z systemu iOS 6 w górę TWTweetComposeViewController i SLComposeViewController (ten ostatni tylko dla Twittera i Weibo, ale nie Facebooka), jeśli osoba dzwoniąca poda: completionHandler, dostarczony completionHandler jest odpowiedzialny za odrzucenie kontrolera widoku. Począwszy od systemu iOS 7, jeśli aplikacja łączy się z zestawem SDK systemu iOS 7, kontroler widoku sam się odrzuci, nawet jeśli osoba wywołująca dostarczy completionHandler. Aby tego uniknąć, dzwoniący completionHandler nie powinien zamykać kontrolera widoku.

Znane problemy

W przypadku korzystania z pakietu SDK dla systemu iOS 6.1 w systemie OS X 10.8 Mountain Lion oraz w przypadku korzystania ze starszego pakietu SDK dla systemu iOS 5.0 lub iOS 5.1 w symulatorze iOS nie będzie możliwe korzystanie z funkcji Twittera: próba zalogowania się do serwisu Twitter za pośrednictwem panelu Ustawienia zakończy się niepowodzeniem i Twitter.framework nie będzie działać poprawnie. Jeśli chcesz przetestować funkcje Twittera, musisz wybrać miejsce docelowe uruchomienia symulatora iOS 6.1 lub iOS 6.0 albo możesz przeprowadzić test z systemem iOS 5.x na urządzeniu.

trampolina

Uwagi

  • Aktywne dotknięcia nie są już anulowane, gdy użytkownik robi zrzut ekranu.
  • Dynamiczna tapeta nie jest dostępna na iPhonie 4.

Naprawiono w Seed 3

  • Ustawienia czasu blokady hasłem i automatycznego blokowania nie zawsze są przestrzegane. Czasami urządzenie nie wymaga hasła, gdy ustawienia tak wskazują.
  • Niektóre aplikacje mogą otrzymywać zduplikowane powiadomienia push lub nie otrzymywać żadnych powiadomień.
  • Przełącznik aplikacji nie pokazuje wszystkich zawieszonych aplikacji.

Znane problemy

  • Hasła ze znakami diakrytycznymi nie są obsługiwane w tym materiale siewnym. Jeśli w haśle znajdują się znaki diakrytyczne, zmień je przed aktualizacją do Seed 3, ponieważ nie będziesz mógł odblokować urządzenia.
  • Springboard ulega awarii podczas uzyskiwania dostępu do niektórych klipów internetowych w przełączniku aplikacji.
  • Podczas przywracania z kopii zapasowej iCloud na urządzeniu z setkami aplikacji Springboard może się wielokrotnie zawieszać.

Zestaw Sprite'a

Znane problemy

+[AVPlayer playerWithPlayerItem:] powraca i AVPlayer obiekt, ale bieżący element zwróci zero, jeśli gracz został utworzony w innym wątku.

Sync

Znane problemy

Opcja synchronizacji Wi-Fi w iTunes jest zaznaczona, ale urządzenia Wi-Fi nie pojawiają się w iTunes.

Rozwiązanie: w systemie OS X zainstaluj pakiet SDK dla systemu iOS 7.0 po zainstalowaniu iTunes. Synchronizacja Wi-Fi nie jest obsługiwana w systemie Windows.

UIKit

Uwagi

  • +[UIPasteboard pasteboardWithName:create:] i +[UIPasteboard pasteboardWithUniqueName] teraz unikatową nazwę, aby umożliwić dostęp do pulpitu tylko aplikacjom z tej samej grupy aplikacji. Jeśli programista spróbuje utworzyć pulpit o już istniejącej nazwie i nie jest częścią tego samego pakietu aplikacji, otrzyma własny, unikalny i prywatny pulpit. Należy pamiętać, że nie ma to wpływu na dostarczane przez system tektury, ogólne i znajdź.
  • Począwszy od Seed 2, aplikacje domyślnie korzystają z nowego systemu zarządzania paskami stanu opartego na kontrolerze widoku. Aby z tego zrezygnować, dodaj wartość NIE dla UIViewControllerBasedStatusBarAppearance klucz do pliku Info.plist.
  • Podczas korzystania z automatycznego układu do pozycjonowania a UIButton, jeśli ustawisz opór kompresji treści lub priorytet przytulania treści na minimum, przycisk będzie miał niejednoznaczny układ.Rozwiązanie: nie używaj priorytetu odporności na kompresję treści ani priorytetu przytulania treści mniejszego niż 2 UIButton.
  • UIScenEdgePanGestureRecognizer umożliwia wykonywanie akcji w odpowiedzi na przeciągnięcia poza krawędź ekranu przy użyciu tej samej heurystyki, której system używa do własnych gestów. Użyj tego, jeśli masz własną nawigację semantyczną, która nie jest używana UINavigationController ale powinien zawierać ten gest (np. Safari).Ten moduł rozpoznawania gestów ma właściwość opisującą krawędzie, na których jest aktywny. UIRectEdge to nowy typ wyliczeniowy, którego używa ta właściwość i -[UIViewController edgesForExtendedLayout] moze sie podzielic. UIRectEdge Zastępuje UIExtendedEdge, które zostaną usunięte. Członkowie obu mają te same wartości. Użyj Xcode, aby zamienić wszystkie wystąpienia „UIExtendedEdge” w swoim projekcie na „UIRectEdge”.
  • Rozmyte warstwy nie są dostępne na iPhonie 4.
  • Paralaksa nie jest dostępna na iPhonie 4.
  • Tekst typograficzny nie jest dostępny na iPhonie 4.

Naprawiono w Seed 3

  • Gdy urządzenie bez hasła zostanie podłączone do niezaufanego komputera, iTunes poinformuje użytkownika o konieczności zatwierdzenia na telefonie, ale telefon nigdy nie poprosi użytkownika o zatwierdzenie. Telefon i tak jest zaufany, więc nie ma wpływu na funkcjonalność, ale brakuje interfejsu użytkownika.
  • UISwitchonTintColors jest zawsze zielony, niezależnie od tego, co jest ustawione.

Znane problemy

VoiceOver

Naprawiono w Seed 3

Przypomnienia nie działają z VoiceOver.

Pogoda

Uwagi

Warunki pogodowe nie są animowane na iPhonie 4.

WebKit

Uwagi

  • Poprzednio, gdy parametry rzutni były modyfikowane, stare parametry nigdy nie były odrzucane. Spowodowało to dodanie parametrów rzutni.

    Na przykład, jeśli zacząłeś od szerokości=szerokość urządzenia, a następnie zmieniłeś ją na skalę początkową=1.0, ostatecznie otrzymałeś obliczoną rzutnię o szerokości=szerokość urządzenia, skala początkowa=1.0.

    W systemie iOS 7 rozwiązano ten problem. Teraz otrzymujesz obliczoną rzutnię o skali początkowej = 1.0.

  • Wcześniej podczas używania , skala może być nieprawidłowa po obróceniu.

    Teraz, jeśli użytkownik nie przeskalował strony jawnie, strona zostanie przywrócona do początkowej skali. Ponadto bieżąca skala jest teraz poprawnie ograniczona w ramach min-scalemax-scale miedza.

  • Niektóre obrazy na urządzeniach wyświetlających Retina są dwukrotnie większe niż powinny, zamiast być pomniejszane o 50%. Ten problem może również wystąpić w przypadku dowolnego skalowanego obrazu, który jest większy niż jego pojemnik i który wykorzystuje albo background-size nieruchomość lub -webkit-background-sizenieruchomość. Ten problem dotyczy zarówno aplikacji natywnych wyświetlających treści internetowe, jak i stron internetowych przeglądanych w przeglądarce Safari na iPhone'a.

    Połączenia background Właściwość skrócona CSS resetuje teraz wartość background-size własność do auto gdy rozmiar tła nie jest określony. To nowe zachowanie jest zgodne ze specyfikacją CSS, a stare zachowanie jest dostępne tylko dla aplikacji połączonych z pakietem SDK w wersji wcześniejszej niż iOS 7.0 i działających w systemie iOS 7 lub nowszym.

    Obejście: Określ background-size nieruchomość lub -webkit-background-size nieruchomość po background skrócona właściwość w arkuszu stylów CSS dla wyświetlanej treści internetowej.