Przejdź do treści głównej
Wersja: 0.80

Rozszerzenia aplikacji

Nieoficjalne Tłumaczenie Beta

Ta strona została przetłumaczona przez PageTurner AI (beta). Nie jest oficjalnie zatwierdzona przez projekt. Znalazłeś błąd? Zgłoś problem →

Rozszerzenia aplikacji pozwalają dostarczać dodatkową funkcjonalność i treści poza główną aplikacją. Istnieją różne typy rozszerzeń w systemie iOS, wszystkie opisano w Przewodniku programowania rozszerzeń. W tym przewodniku krótko omówimy, jak możesz wykorzystać rozszerzenia aplikacji w iOS.

Zużycie pamięci w rozszerzeniach

Ponieważ rozszerzenia ładują się poza główną piaskownicą aplikacji, często wiele z nich działa jednocześnie. Jak można się spodziewać, mają one niskie limity zużycia pamięci. Pamiętaj o tym podczas tworzenia rozszerzeń. Zawsze zaleca się testowanie aplikacji na rzeczywistym urządzeniu, a szczególnie przy rozszerzeniach: zbyt często zdarza się, że rozszerzenie działa poprawnie w symulatorze iOS, ale użytkownicy zgłaszają problemy z uruchomieniem na prawdziwych urządzeniach.

Widget "Dziś"

Limit pamięci dla widgetu "Dziś" wynosi 16 MB. Implementacje tego widgetu w React Native często działają niestabilnie z powodu nadmiernego zużycia pamięci. Przekroczenie limitu rozpoznasz po komunikacie "Nie można załadować":

Zawsze testuj rozszerzenia na rzeczywistym urządzeniu, ale pamiętaj, że to może nie wystarczyć, szczególnie dla widgetów "Dziś". Buildy debugowane częściej przekraczają limity pamięci, podczas gdy buildy produkcyjne nie zawodzą od razu. Gorąco zalecamy użycie Instruments w Xcode do analizy rzeczywistego zużycia pamięci, ponieważ build produkcyjny często zbliża się do limitu 16 MB. W takich sytuacjach nawet proste operacje, jak pobieranie danych z API, mogą łatwo przekroczyć ten limit.

Aby przetestować ograniczenia implementacji widgetu "Dziś" w React Native, rozbuduj przykładowy projekt z react-native-today-widget.

Inne rozszerzenia aplikacji

Inne typy rozszerzeń mają wyższe limity pamięci niż widget "Dziś". Na przykład niestandardowe klawiatury mają limit 48 MB, a rozszerzenia udostępniania - 120 MB. Implementowanie takich rozszerzeń w React Native jest bardziej praktyczne. Przykładem koncepcyjnym jest react-native-ios-share-extension.