Podczas próby zarchiwizowania w celu przesłania aplikacji na system iOS pojawia się błąd w ustawieniach udostępniania


312

Teraz próbuję Produkt> Zarchiwizuj moją aplikację na iOS, aby ją przesłać. Pojawiają się jednak następujące błędy:

Nazwa aplikacji ma sprzeczne ustawienia udostępniania. Nazwa aplikacji jest automatycznie podpisywana do celów programistycznych, ale tożsamość podpisująca konflikt kodu iPhone Distribution została ręcznie określona. Ustaw wartość tożsamości podpisywania kodu na iPhone Developerw edytorze ustawień kompilacji lub przełącz się na ręczne podpisywanie w edytorze projektu

Podpisywanie kodu jest wymagane dla typu produktu „Aplikacja” w zestawie SDK „iOS 10.1”

Sytuacja nie ulegnie zmianie, nawet jeśli ponówię cały proces, aby odtworzyć certyfikaty iOS lub profil informacyjny.

Ustawiałem jak iOS Distributionw TARGETS > Code Signing Identity > Release > Any iOS SDK. Kiedy zmieniłem ustawienie jak iOS Developertutaj i zmieniłem ustawienie PROJECTS > Code Signing Identity > Release > Any iOS SDKas iOS Distribution, udało mi się zarchiwizować. Zastanawiam się, czy konieczne jest ustawienie jak iOS Distributionw edytorze docelowym, czy nie. A jeśli jest to obowiązkowe, daj mi znać, jak mogę obejść ten błąd.

Moja wersja XCode to 8.1.


4
Musisz upewnić się, że ustawienia podpisywania kodu nie powodują konfliktu między projektem a celem.
max_

1
Myślę, że wypróbowałem każdą kombinację ustawień podpisywania kodu między projektem a celem. Mój problem występuje w dowolnym ustawieniu, nie mogę odnieść sukcesu, gdy ustawię się jako iOS Distributionw edytorze docelowym i zastanawiam się, czy jest to konieczne.
vanagar

1
@BenLeggiero Zobacz także stackoverflow.com/a/52573190/341994 . Jak wyjaśnię, istnieje ręczny sposób czyszczenia.
mat

Dzięki za wskaźnik, @matt! Nie dotyczy to bezpośrednio problemu, nad którym pracowałem, ponieważ tworzymy aplikację na komputery Mac i nie używamy integracji takich jak Game Center. Jednak doda to do zakładek na później!
Ben Leggiero

Odpowiedzi:


897

Miałem ten sam błąd, ale już zaznaczyłem „Automatycznie zarządzaj podpisywaniem”.

Rozwiązaniem było odznaczenie go, a następnie ponowne sprawdzenie i ponowne wybranie zespołu. Następnie Xcode naprawił wszystko, co było przyczyną problemu.


15
Dzięki! To zadziałało dla mnie, dla każdego, kto używa Cordova do generowania platformy ios, dostałem ten błąd, nawet przy użyciu najnowszej wersji Cordova. automatyczne podpisywanie było domyślnie zaznaczone, ale nie wybrano zespołu. było to tylko wtedy, gdy odznaczyłem zarządzanie podpisywaniem i wybrałem automatyczne podpisywanie, a zespół był w stanie zacząć działać. dzięki Erin!
Jtello

2
Po ponownym sprawdzeniu podpisywanie kodu automatycznie ustawia programistę iOs, ale muszę go ustawić iOs Distribution, a kiedy go ustawiam Xcode Distribution iOs przez ten sam wyjątek, jak wspomniano powyżej.
ami rt

1
@amirt Mam dokładnie taki sam problem jak twój. Naprawiłeś to?
Kimi Chiu,

@KimiChiu Tak, bracie, ja to zrobiłem.
ami rt

2
To prawda, ale aby wyjaśnić to nieco bardziej, oto, czego doświadczyłem: - Musisz wcześniej ręcznie utworzyć profil obsługi dystrybucji (za pośrednictwem strony internetowej programisty Apple). Automatyczne podpisywanie nie robi tego za Ciebie. - W przypadku, gdy Tożsamości podpisujące kod w Ustawieniach kompilacji zostały jakoś popieprzone: wszystkie 4 z nich muszą być ustawione na „iOS Developer” (nawet te do wydania), aby automatyczne podpisywanie działało
jakob.j

153

Miałem ten sam problem, zauważyłem, że jeśli chcesz wydać wersję swojej aplikacji iOs i opublikować ją w App Store, wcale nie musisz umieszczać „Tożsamości podpisywania kodu” jako wersji, po prostu zachowaj ją jako programista iOs.

Przejdź do swojego projektu -> Ustawienia kompilacji -> Tożsamość podpisywania kodu i przekaż wszystko programistom iOs.

wprowadź opis zdjęcia tutaj


3
Tak, to działa. Ale w przypadku kompilacji ad hoc muszę wyłączyć automatyczne podpisywanie i przejść tam i zamiast tego ustawić opcję „Dystrybucja iOS”. Dlaczego Apple wdrożyło to w ten sposób? To nie ma żadnego sensu :(
algrid

to najlepsza odpowiedź. xcode przepisuje ustawienia w trybie lokalnym po „zarchiwizowaniu”.
Tom Marvolo Riddle

proszę spojrzeć na „Review xxx.ipa content:” wyświetlany po zarchiwizowaniu, jest to „Certyfikat: dystrybucja iOS”.
Tom Marvolo Riddle

To powinna być poprawna odpowiedź. Przyjęte rozwiązanie tego pytania jest częściowo poprawne.
Sanchit Kumar Singh

72

W przypadku osób pochodzących z Ionic lub Cordova możesz wypróbować następujące czynności:

Otwórz plik yourproject/platforms/ios/cordova/build-release.xcconfigi zmień z tego:

CODE_SIGN_IDENTITY = iPhone Distribution
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Distribution

zaangażowany w to:

CODE_SIGN_IDENTITY = iPhone Developer
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Developer

i spróbuj uruchomić ios cordova build ios --releaseponownie, aby skompilować kompilację wydania.

Odniesienie: https://forum.ionicframework.com/t/ios-build-release-error-is-automatically-signed-for-development-but-a-conflicting-code-signing-identity-iphone-distribution-has- został ręcznie określony / 100633/7


3
Po wypróbowaniu wszystkich innych odpowiedzi, to ta w końcu sprawdziła się dla mnie. Dziękuję Ci!
mikewagz

1
Plik nazywa się teraz build-release.xcconfig . Brakowało jednego „c” Oto skrypt bash, aby to zrobić: `` #! / Usr / bin / env bash sed -i "" "s / iPhone Distribution / iPhone Developer / g" platform / ios / cordova / build-release.xcconfig exit 0; ``
Kent Bull

3
Możesz także po prostu skomentować linie; ustawienie programisty iPhone jest włączone build.xcconfig, te linie po prostu go zastępują.
Jules

3
Po prostu usunąłem te dwie linie i pozwoliłem Xcode automatycznie zarządzać podpisywaniem.
Ryan H.

3
Możesz użyć wtyczki cordova-custom-config, aby zrobić to automatycznie za pomocą następujących wierszy w pliku config.xml: <custom-preference buildType = "release" name = "ios-XCBuildConfiguration-CODE_SIGN_IDENTITY" value = "iPhone Developer" xcconfigEnforce = " true "/> <custom-preference buildType =" release "name =" ios-XCBuildConfiguration-CODE_SIGN_IDENTITY [sdk = iphoneos *] "value =" iPhone Developer "xcconfigEnforce =" true "/>
FactualHarmony

64

Nadmiernie o tym myślisz. Proces ten jest znacznie ulepszony i niezwykle łatwy w Xcode 8. Skorzystaj z tego faktu.

Krok pierwszy : w żaden sposób nie kształtuj ani nie próbuj konfigurować ustawień podpisywania kodu w Ustawieniach kompilacji. Nie zbliżaj się do nich. Absolutnie to zepsujesz. Zamiast tego edytuj cel i wykonaj całą pracę w panelu Ogólne. Najlepsze podejście: skonfiguruj się do automatycznego podpisywania kodu - po prostu wpisz swój zespół i zaznacz pole wyboru:

wprowadź opis zdjęcia tutaj

Krok drugi : Upewnij się, że masz tożsamość dystrybucyjną (certyfikat) systemu iOS. Możesz to sprawdzić w Preferencje Xcode> Konta, Wyświetl szczegóły. W tym momencie dobrym pomysłem byłoby udanie się do centrum członkowskiego i załatwienie aplikacji mobilnej App Store dla tej aplikacji oraz pobranie i zainstalowanie jej.

Krok trzeci : Wybierz „Ogólne urządzenie iOS” jako miejsce docelowe i wybierz Produkt> Archiwum. Aplikacja zostanie skompilowana, archiwum zostanie utworzone i możesz teraz przesłać do App Store.


Dziękuję bardzo! Udało się. Pozwól, że potwierdzę krok 2: pobieranie „mobilnego udostępniania”. Czy to „Profile udostępniania iOS (dystrybucja)”? Właśnie dwukrotnie kliknąłem pobrany plik i czy jest to instalacja, o której tu wspomniałeś?
vanagar

Tak, dokładnie. Pobrany plik został teraz skopiowany do świata Xcode (możesz wyrzucić oryginał) i będzie widoczny dla Xcode po przesłaniu go do App Store.
mat.

Może się zdarzyć, że w pewnych okolicznościach nie musisz tworzyć pliku aprowizacji mobilnej App Store, ponieważ Xcode utworzy go automatycznie. Ale uważam, że i tak warto to zrobić.
mat.

2
To zabawne, że wszystkie samouczki dotyczące wdrażania, które widziałem, zalecają ręczną zmianę ustawień podpisywania kodu w każdym celu. Włączyłem automatyczne zarządzanie, ale nawet nie zdawałem sobie z tego sprawy.
Dan

1
@andreszs Automatyczne podpisywanie ma dobrą robotę, tworząc certyfikat i profil rozwoju, który jest wszystkim, czego potrzebujesz, aby opracować i zarchiwizować. Ale kiedy przychodzi czas na dystrybucję do sklepu z aplikacjami, uważam, że dobrym pomysłem jest ręczne utworzenie profilu dystrybucji i pobranie go, gotowe do użycia podczas procesu eksportu.
mat

52

Jeśli pojawi się ten błąd

Aplikacja ma sprzeczne ustawienia udostępniania. Aplikacja jest automatycznie podpisywana, ale profil udostępniania „ID” został ręcznie określony. Ustaw wartość profilu udostępniania na „Automatycznie” w edytorze ustawień kompilacji lub przełącz się na ręczne podpisywanie w edytorze projektu.

następnie upewnij się, że masz pustą opcję PROVISIONING_PROFILE w Docelowych ustawieniach kompilacji :

wprowadź opis zdjęcia tutaj


1
Nie rozróżniłem profilu użytkownika i profilu kompilacji systemu ... dlatego dziękuję, że
zwróciłeś

To mi pomogło.
Rafał Zawadzki

To był błąd, którego szukałem i dostałem link do tego SO pytania, ale to jest odpowiedź, której potrzebowałem. Pamiętaj, że próba określenia wartości „Automatycznie” nie działa. NIE musisz tego wszystkiego określać, mimo że komunikat o błędzie mówi inaczej. Dla mnie używamy plików xcconfig, więc chodziło o usunięcie ustawienia z pliku konfiguracyjnego.
user107172

29

Nie zapomnij tego zrobić,

Wybierz Projekt -> Ustawienia kompilacji. Wyszukaj PROVISIONING_PROFILE i usuń wszelkie bzdury.


1
Prawdopodobnie jedyne rozwiązanie, które mi to zrobiło, dzięki
Alexander Vitanov

4
Zrobiłem to w połączeniu z odznaczeniem i ponownym zaznaczeniem opcji Automatycznie zarządzaj podpisywaniem na karcie Ogólne, a następnie ponownym wyborem zespołu. Dzięki Rein i Erin. (Hej, spójrz na to, twoje imiona to anagramy!)
Dave Levy

Cóż, to interesujące @DaveLevy
Rein rPavi

Nie dałem tyle uznania, ponieważ mój PROVISIONING_PROFILE nie zawierał śmieci, miał ustawiony „Automatyczny” i wyglądał dobrze. Usunięcie go i ponowne włączenie automatycznego podpisywania załatwiło sprawę!
Rafael Nobre,

1
Jest ustawiony jako „Automatyczny” i nie można go usunąć.
Dror Bar

22

Jeśli jesteś ze świata jońskiego. Na etapie „archiwizacji” może pojawić się błąd „podpisywania kodu konfliktu”, jak poniżej:

... jest automatycznie podpisywany do programowania, ale tożsamość podpisująca kod powodujący konflikt iPhone Distribution została ręcznie określona. Ustaw wartość tożsamości podpisywania kodu na „iPhone Developer” w edytorze ustawień kompilacji lub przełącz się na ręczne podpisywanie w edytorze projektu. Podpisywanie kodu jest wymagane dla typu produktu „Aplikacja” w zestawie SDK „iOS 10.x”

W takim przypadku przejdź do Ustawień kompilacji / w trakcie podpisywania, tożsamości podpisywania kodu i wybierz oba jako programista iOS, a nie Dystrybucja.

Przejdź do menu: Produkt / Archiwum ponownie, wtedy problem zostanie rozwiązany.


2
Problem polega na tym, że resetuje się przy każdej kompilacji ... To psuje nasze automatyczne kompilacje. Masz pomysł, jak to zmienić w skrypcie nieinteraktywnym?
Webberig,

1
Doskonale, to rozwiązało problem. To rozwiązanie ma sens z perspektywy czasu i przy dużym spożyciu alkoholu.
Steven Kramer,

18

W przypadku osób pochodzących z Ionic lub Cordova możesz wypróbować następujące czynności: Odłącz wcześniej urządzenia ios od komputera ios cordova build ios --release(wydaje się, że zmienia ono docelowe urządzenie do podpisywania xcode).


6
To najgłupsza odpowiedź i całkowicie działa. Nienawidzę wszystkich obejść, które musimy zrobić z Xcode, aby uruchomić aplikację.
Jordan Benge,

to prawda. Gdy miałem iPada podłączonego zamiast iPhone'a, pojawia się ten błąd. Gdy odłączyłem wszystkie urządzenia ios i zbudowałem je z wiersza poleceń, potem działało dobrze.
Neel

Absolutnie racja. Cały dzień próbowałem rozwiązać ten problem i jest to jedyne rozwiązanie, które działa dla mnie.
ulisesvera

1
IOS mnie denerwuje ... wszystko musi być rozwiązane przez chichot .... inaczej dzięki stary
Seloka

15

Przejdź do ustawień kompilacji, wyszukaj tożsamość podpisywania kodu i ustaw dowolną wartość zestawu SDK systemu iOS dla programisty iOS:

wprowadź opis zdjęcia tutaj


4
Tak, dokładnie o to prosi komunikat o błędzie. Ale czy mógłbyś wyjaśnić, dlaczego do cholery używanie „iOS Developer” do kompilacji wydań miałoby jakiś sens?
algrid

co dziwne, działało to również w projekcie generowanym przez jedność jakiś czas temu
ina

15

Jedyne rozwiązanie działało dla mnie:

  1. Zamknij projekt Xcode
  2. Za pomocą wyszukiwarki przejdź do folderu projektu
  3. Kliknij prawym przyciskiem myszy .xcodeproj i wybierz „Pokaż zawartość opakowania”
  4. Kliknij prawym przyciskiem myszy project.pbxproj i wybierz „Otwórz za pomocą” i wybierz TextEdit
  5. Teraz wyszukaj instancję Provision Profile określoną w komunikacie o błędzie.
  6. Usuń wszystkie znalezione teksty i pozwól wyczyścić profile obsługi administracyjnej.
  7. Zapisz i zamknij
  8. Otwórz Xcode
  9. Włącz automatyczne zarządzanie podpisywaniem

Cieszyć się! Mam nadzieję, że się przyda!


Wiedziałem, że to będzie problem z Xcode. Dzięki tonie człowieku !!!! Pokazał się automatycznie w Ustawieniach kompilacji dla profilu udostępniania, ale nadal dawał ten błąd. Dzięki Bogu nie tylko ja miałem problem.
Amber K

Właściwie można go używać, jeśli masz jedno konto programisty i jedną aplikację, ale w przypadku wielu aplikacji powoduje to inne problemy.
goraga1

9

Dla mnie zmień Code Signing Identityna wszystkie iOS Developerdla obu Debugi Release.

I Code Signing Styledo Automatic.

wprowadź opis zdjęcia tutaj



7

Spróbuj wykonać jedną z poniższych czynności

1.Usuwanie i dodawanie platformy iOS i przebudowanie projektu dla iOS

ionic cordova platform rm ios
ionic cordova platform add ios
ionic cordova build ios --release

2. Zmiana ustawienia kompilacji Xcode

Rozwiązaniem było odznaczenie go, a następnie ponowne sprawdzenie i ponowne wybranie zespołu. Następnie Xcode naprawił wszystko, co było przyczyną problemu.

3. Zmień następujący kod na platformie

Nie miało to dla mnie sensu, ponieważ ustawiłem projekt na automatyczne logowanie w xcode. Podobnie jak ty zaznaczanie i odznaczanie nie działało. Ale potem przeczytałem ostatnią podaną ścieżkę do pliku i podążyłem za nią. Ścieżka do pliku to APP> Platformy> ios> Cordova> build-release.xconfig

W pliku iPhone Distribution jest wyraźnie ustawiony na CODE_SIGN_IDENTITY.

Zmiana:

CODE_SIGN_IDENTITY = iPhone Distribution
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Distribution

Do:

CODE_SIGN_IDENTITY = iPhone Developer
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Developer

7

Długo walczyłem, wypróbowałem wszystkie zaproponowane rozwiązania. Nic dla mnie nie działa.

Potem znalazłem problem: na końcu karty Ustawienia kompilacji znajdowało się „Ustawienia zdefiniowane przez użytkownika” dla „PROVISIONING_PROFILE”. Usuwam go zarówno dla ustawień kompilacji Project, jak i Target. Wtedy automatyczne podpisywanie działało idealnie.

Mam nadzieję, że pomoże to komuś innemu. :)


6

Znajdź plik .xcodeproj i otwórz go za pomocą edytora tekstu

Znajdź pola poniżej i ustaw je w ten sposób

CODE_SIGN_IDENTITY = „iPhone Developer”; "CODE_SIGN_IDENTITY [sdk = iphoneos *]" = "iPhone Developer";

PROVISIONING_PROFILE = "";

PROVISIONING_PROFILE_SPECIFIER = "";


6
  1. Ogólne -> Podpisywanie -> zaznacz automatycznie zarządzaj podpisywaniem i wybierz zespół

  2. Ustawienia kompilacji -> Podpisywanie -> Tożsamość podpisywania kodu -> USTAW WSZYSTKO DO „programisty IOS”


4

Tylko dla mnie działało.

Otwórz projekt -> Wybierz cel -> Przejdź do Ustawień kompilacji -> Wyszukaj POSTĘPOWANIE i usuń wybrane profile.


2

W moim przypadku musiałem zalogować się na stronie Apple Developer i zresetować listę urządzeń.

Wygląda na to, że teraz wymagają przedłużenia subskrypcji co roku, aby móc dodawać nowe urządzenia i generować certyfikaty.


2

Miałem ten sam problem. Mój problem został rozwiązany przez wyszukanie „profilu udostępniania” w ustawieniach kompilacji rozszerzenia udziałów

Potem były tam dwa pola „Profilu obsługi administracyjnej”, jedno zwykłe i jedno przestarzałe. Zwykły był w trybie automatycznym, ale przestarzały nie. Również zmiana tej opcji na Automatyczną naprawiła mój błąd.


2

Dla mnie przeciągnąłem dump_symsplik binarny i kilka skryptów do mojego celu kompilacji, kiedy ręcznie zainstalowałem Firebase SDK. Usunięcie ich z mojego celu i projektu rozwiązało problem.


Nierealne, dziękuję za wskazanie właściwego kierunku. Więcej informacji tutaj: stackoverflow.com/questions/41056047/…
Dror Bar

2

Korzystanie z Xcode 10: Żadne z innych rozwiązań tutaj nie działało dla mnie.

Ten błąd wydaje się być czymś, czego nie można naprawić w Xcode 10

Musiałem wrócić do Xcode 9, aby rozwiązać ten problem, a następnie zaktualizować z powrotem do Xcode 10, aby móc uruchomić aplikację na iOS 12 na urządzeniu bez emulatora.

Wszelkie inne rozwiązania znalezione w stosie przepełnienia stosu lub gdzie indziej, używane w Xcode 10, wprowadziły mnie w niekończący się cykl konfliktów udostępniania lub podpisywania problemów z certyfikatami. Wygląda na to, że podpisywanie jest zepsute w Xcode 10, niezależnie od tego, czy korzystasz z metody automatycznej, czy ręcznie wybierasz profile i certyfikaty udostępniania.

Możesz powrócić do Xcode 9, najpierw usuwając Xcode 10 z folderu Aplikacje. Następnie zainstaluj Xcode 9 przy użyciu pliku .xip wymienionego na tej stronie Apple Developers .

W Xcode 9 użyj opcji automatycznej kompilacji. Może być konieczne odznaczenie opcji „Automatycznie zarządzaj podpisywaniem” i ponowne wybranie go, a także może być konieczne odwołanie istniejącego certyfikatu na stronie developer.apple.com .

Po pomyślnym zainstalowaniu aplikacji w Xcode 9 możesz zaktualizować ją do Xcode 10 za pomocą App Store. Po ponownym otwarciu aplikacji w Xcode 10 wszystko nadal działało. Być może nie musisz tego robić, ale musiałem to zrobić, aby zbudować system iOS 12, który wymaga Xcode 10.


Spróbuj dodać flagę --buildFlag = "- UseModernBuildSystem = 0"
Redwolf

2

Otworzyłem plik projektu w edytorze tekstowym „Atom”, a następnie szukałem identyfikatora profilu informacyjnego i usunąłem go.


0

Zmień swój kod zaloguj się na certyfikat dystrybucji.


Dziękuję, ale próbowałem wiele razy w ciągu ostatnich 3 dni i za każdym razem się nie udawało.
vanagar

0

Po aktualizacji do Xcode 8.3.2 miałem ten sam błąd w projekcie Cordova. Musiałem zaktualizować Cordova (v7.0.0) i platformę iOS (v4.4.0), aby podpisywanie kodu działało.



0

Upewnij się, że „Identyfikator pakietu produktu” w nazwie ustawień kompilacji odpowiada rzeczywistemu identyfikatorowi pakietu. To zadziałało dla mnie.


0

Dla mnie muszę przełączyć się z trybu automatycznego na ręczny i przejść do trybu automatycznego, ten sam błąd. Przełącz na ręczny i zmień te profile udostępniania i ustawienia podpisywania kodu, buduj i otrzymuj błędy, i przełącz się z powrotem na auto, a potem tylko sukces.


0

Miałem ten sam problem. Uświadomiłem sobie, że dzieje się tak, ponieważ korzystałem z xcode podczas jego używania. Ponieważ aktualizacje nie zostały poprawnie zainstalowane, spowodowały pojawienie się tych błędów. Jedyną rzeczą, która to naprawiła, było wyjście z Xcode i ponowne otwarcie. Kiedy go ponownie otworzyłem, poprosił mnie o zainstalowanie aktualizacji. Po zainstalowaniu aktualizacji błędy zniknęły.


0

Problem tkwi w ustawieniach Cordova.

Uwaga:

iPhone Distribution has been manually specified

Nie miało to dla mnie sensu, ponieważ ustawiłem projekt na automatyczne logowanie w xcode. Podobnie jak ty zaznaczanie i odznaczanie nie działało. Ale potem przeczytałem ostatnią podaną ścieżkę do pliku i podążyłem za nią. Ścieżka do pliku toAPP > Platforms > ios > Cordova > build-release.xconfig

W pliku iPhone Distribution jest wyraźnie ustawiony CODE_SIGN_IDENTITY.

Zmiana:

CODE_SIGN_IDENTITY = iPhone Distribution
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Distribution

Do:

CODE_SIGN_IDENTITY = iPhone Developer
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Developer

To prosta sprawa, a komunikat o błędzie jasno pokazuje, że iPhone Distribution został ręcznie określony, ale tak naprawdę nie mówi gdzie, chyba że podążasz ścieżką. Patrzyłem i bawiłem się xcode przez około trzy godziny, próbując to rozgryźć. Ma nadzieję, że pomoże to każdemu w przyszłości.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.