{"id":137909,"date":"2021-07-08T00:00:00","date_gmt":"2021-07-08T00:00:00","guid":{"rendered":"https:\/\/adapty.io\/pl-storekit-2\/"},"modified":"2021-07-08T00:00:00","modified_gmt":"2021-07-08T00:00:00","slug":"storekit-2","status":"publish","type":"post","link":"https:\/\/adapty.io\/pl\/blog\/storekit-2\/","title":{"rendered":"Co nowego w StoreKit 2 API i jak Apple upro\u015bci\u0142o integracj\u0119 zakup\u00f3w w aplikacji"},"content":{"rendered":"\n
Apple wprowadzi\u0142o now\u0105 wersj\u0119 StoreKit 2 podczas wydarzenia WWDC 2021, kt\u00f3re odby\u0142o si\u0119 stosunkowo niedawno. Jest to framework odpowiedzialny za dokonywanie zakup\u00f3w w systemie iOS. Udzia\u0142 aplikacji z funkcjami zakupu w aplikacji (in-app purchase) i subskrypcji stale ro\u015bnie, a Apple znacznie upro\u015bci\u0142o integracj\u0119 zakup\u00f3w w aplikacji, wydaj\u0105c StoreKit 2. Dzisiaj rozwa\u017cymy wsp\u00f3\u0142prac\u0119 ze StoreKit 2 ze strony serwera, innymi s\u0142owy, za pomoc\u0105 API serwera App Store.<\/p>\n\n\n\n
W bie\u017c\u0105cej wersji interfejsu API, aby wys\u0142a\u0107 \u017c\u0105danie, potrzebujesz Shared Secret. Jest to tajny, sta\u0142y ci\u0105g, kt\u00f3ry mo\u017cna uzyska\u0107 w App Store Connect. Nowa wersja API u\u017cywa standardu JSON Web Token (JWT) do uwierzytelniania \u017c\u0105da\u0144. <\/p>\n\n\n\n
Przede wszystkim, utw\u00f3rz klucz prywatny<\/a> kt\u00f3ry zostanie wykorzystany do autoryzacji \u017c\u0105da\u0144. Otw\u00f3rz App Store Connect i przejd\u017a do sekcji u\u017cytkownicy i dost\u0119p (Users and Access), a nast\u0119pnie do zak\u0142adki klucze (Keys). Wybierz typ klucza „In-App Purchase”. Pobierz nowy klucz. Potrzebny b\u0119dzie r\u00f3wnie\u017c jego identyfikator-mo\u017cesz go skopiowa\u0107 na tej samej stronie, co Issue ID, kt\u00f3ry mo\u017cna znale\u017a\u0107 w zak\u0142adce API w App Store Connect.<\/p>\n\n\n\n Nast\u0119pnym krokiem jest utworzenie tokena, kt\u00f3ry b\u0119dzie u\u017cywany do autoryzacji \u017c\u0105da\u0144. Proces ten jest szczeg\u00f3\u0142owo opisany w dokumentacji<\/a>, nie ma wi\u0119c powodu, by po\u015bwi\u0119ca\u0107 temu zbyt wiele uwagi. Oto przyk\u0142ad gotowej implementacji dla Pythona. Warto zauwa\u017cy\u0107, \u017ce nie ma sensu generowa\u0107 nowego tokena dla ka\u017cdego nowego \u017c\u0105dania. Podczas tworzenia tokena ustawiasz jego \u017cywotno\u015b\u0107 na maksymalnie 60 minut i u\u017cywasz tego samego tokena przez ten czas.<\/p>\n\n\n\n
Tworzenie tokena<\/h3>\n\n\n\n