Мне нужен способ протестировать службу обратной связи с push-уведомлениями. Я могу отправлять уведомления нормально.
Я установил приложение с помощью XCode на свой IPod разработчика, отлично отправлял push-уведомления, приложение получало их нормально.
Я удалил приложение, отправил несколько push-уведомлений. Затем попробовал службу обратной связи, но безрезультатно. Я не получаю никаких байтов обратно из потока.
Даже пытался ждать до суток. Пробовал то же самое на другом айфоне, но ничего. Я уверен, что код в порядке, дважды проверил URL-адрес, порт и т. д., все в порядке. Помимо использования тех же настроек (кроме URL-адреса и порта), я могу отлично отправлять push-уведомления.
Поэтому я не уверен, что делать сейчас. Я искал в Интернете, но не нашел ничего полезного. Кто-то предложил именно то, что я уже пробовал (отправить push -> удалить -> отправить push -> прослушать отзывы).
Любые идеи? В любом случае я могу убедиться, что все в порядке, прежде чем запускать его в прямом эфире?
Ниже приведен код (С#):
using (TcpClient client = new TcpClient())
{
client.Connect("feedback.sandbox.push.apple.com", 2196);
using (NetworkStream networkStream = client.GetStream())
{
Console.Out.WriteLine("Client Connected");
X509Certificate cert = new X509Certificate(fileLocation, password);
X509CertificateCollection certCollection = new X509CertificateCollection(new X509Certificate[1] { cert });
SslStream ssl = new SslStream(client.GetStream(), true, new RemoteCertificateValidationCallback(ValidateServerCertificate), null);
try
{
int bytesRead;
byte[] b = new byte[38];
ssl.AuthenticateAsClient("feedback.sandbox.push.apple.com", certCollection, SslProtocols.Default, false);
do
{
bytesRead = ssl.Read(b, 0, b.Length);
}
while (bytesRead != 0);
ssl.Close();
}
catch (AuthenticationException e)
{
Console.WriteLine("Exception: {0}", e.Message);
return;
}
}
}