2012-12-08 14 views
5

Szukałem odpowiedzi na to i nie mogę tego znaleźć. Wysyłam powiadomienia PUSH do wielu smaków moich aplikacji. Poprzednio ustawiłem to tak, aby przeglądać każdy certyfikat i dopasowywać go do typu aplikacji użytkownika. Skutecznie tworzę nowe połączenie SSL dla każdego certyfikatu, a następnie wysyłam wszystkie powiadomienia o tym konkretnym certyfikacie.Wiele certyfikatów APNS w tym samym pliku certyfikatu

Konieczne jest przekształcenie wszystkich tych certyfikatów i zainstalowanie ich po wygaśnięciu. Mogę eksportować wiele certyfikatów z dostępu KeyChain jako pojedynczy plik p12 i przekonwertować go, co pomaga zachować prostotę z punktu widzenia zarządzania certyfikatami. Problem polega na tym, że żadne z moich powiadomień PUSH nie są odbierane. Mogę połączyć się z APNS z powodzeniem i żadne problemy nie są zgłaszane przez serwis opinii, ale nic nie wydaje się przechodzić. To prowadzi mnie do przekonania, że ​​APNS weryfikuje jedyny pierwszy certyfikat w pliku i ignoruje wszelkie inne, które pozwoliłyby na udane połączenie, ale prawdopodobnie uniemożliwiłoby dostarczenie powiadomień. W takim przypadku spodziewam się zerwania połączenia lub czegoś podobnego w serwisie opinii i jak dotąd nie widziałem żadnej.

Czy ktoś ma wgląd w to, aby to zrobić? Dziękuję Ci.

Odpowiedz

3

Pozwolę sobie powtórzyć: Masz wiele certyfikatów spakowanych razem w pojedynczy kontener/kolekcję/cokolwiek, i używasz tego do ustanowienia wzajemnie uwierzytelnionej sesji SLL z APNS. Następnie wysyłasz prośbę o jedno lub więcej urządzeń powiązanych z jednym z certyfikatów, a to nie działa. Czy to jest dokładne?

Jeśli tak, to myślę, że twoje podsumowanie sprawy jest poprawne. Sekwencja zdarzeń polega na tym, że certyfikat jest oceniany podczas ustanawiania sesji SSL. Jest to część protokołu sieciowego, a na tym etapie serwer APNS MUSI wybrać, który certyfikat ma zostać użyty. Następnie, po wysłaniu żądania, "serwer aplikacji" sprawdza tylko, czy token urządzenia zawiera te same informacje o koncie, co certyfikat. Twój scenariusz nie jest trywialny i nie ma szans na jego działanie, chyba że Apple wyraźnie zainwestował wysiłek w jego wsparcie. W takim przypadku spodziewałbym się, że zostanie to wspomniane w dokumentacji dla programistów. Nie jest.

W takim przypadku nic nie zobaczysz również w usłudze zwrotnej, ponieważ informacja zwrotna zostanie zebrana/wysłana tylko dla urządzeń powiązanych z kontem w certyfikacie.

BTW jeśli korzystasz z rozszerzonego formatu protokołu APNS, możesz odczytać odpowiedzi o błędach podczas wysyłania. Aby uzyskać więcej informacji, patrz programming guide.

+0

Tak, masz to. Pomyślałem, że tak właśnie było, chciałem go położyć na wypadek, gdyby ktoś wiedział, jak to działa. Dziękuję za potwierdzenie. – greg

Powiązane problemy