LibKing » Книги » comp-programming » Вандад Нахавандипур - iOS. Приемы программирования

Вандад Нахавандипур - iOS. Приемы программирования

Тут можно читать онлайн Вандад Нахавандипур - iOS. Приемы программирования - бесплатно ознакомительный отрывок. Жанр: comp-programming, издательство Питер, год 2014. Здесь Вы можете читать ознакомительный отрывок из книги онлайн без регистрации и SMS на сайте LibKing.Ru (ЛибКинг) или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
Вандад Нахавандипур - iOS. Приемы программирования
  • Название:
    iOS. Приемы программирования
  • Автор:
  • Жанр:
  • Издательство:
    Питер
  • Год:
    2014
  • ISBN:
    978-5-496-01016-0
  • Рейтинг:
    3.9/5. Голосов: 101
  • Избранное:
    Добавить в избранное
  • Ваша оценка:

Вандад Нахавандипур - iOS. Приемы программирования краткое содержание

iOS. Приемы программирования - описание и краткое содержание, автор Вандад Нахавандипур, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

Книга, которую вы держите в руках, представляет собой новый, полностью переписанный сборник приемов программирования по работе с iOS. Он поможет вам справиться с наболевшими проблемами, с которыми приходится сталкиваться при разработке приложений для iPhone, iPad и iPod Touch. Вы быстро освоите всю информацию, необходимую для начала работы с iOS 7 SDK, в частности познакомитесь с решениями для добавления в ваши приложения реалистичной физики или движений — в этом вам помогут API UIKit Dynamics.

Вы изучите новые многочисленные способы хранения и защиты данных, отправки и получения уведомлений, улучшения и анимации графики, управления файлами и каталогами, а также рассмотрите многие другие темы. При описании каждого приема программирования приводятся образцы кода, которые вы можете смело использовать.

iOS. Приемы программирования - читать онлайн бесплатно ознакомительный отрывок

iOS. Приемы программирования - читать книгу онлайн бесплатно (ознакомительный отрывок), автор Вандад Нахавандипур
Тёмная тема

Шрифт:

Сбросить

Интервал:

Закладка:

Сделать

openssl x509 — in PushCertificate.cer — inform der — out PushCertificate.pem

2. Чтобы преобразовать файл. p12 в PEM-файл, введите в окне терминала следующую команду:

openssl pkcs12 — nocerts — in PushKey.p12 — out PushKey.pem

3. Система потребует ввести пароль, который вы задали для этого закрытого ключа, когда экспортировали его из раздела Keychain Access. После того как пароль для импорта будет проверен и подтвержден, OpenSSL запросит у вас фразу-пароль для результирующего PEM-файла. Этот пароль должен содержать не менее четырех символов. Задайте такой пароль и хорошо запомните его для последующего использования.

4. Теперь у вас на ПК должно быть два PEM-файла: PushCertificate.pem и PushKey.pem. Нужно сложить их в единый PEM-файл — этот формат распознается PHP. Для этого воспользуйтесь следующей командой:

cat PushCertificate.pem PushKey.pem > PushCertificateAndKey.pem

5. Теперь проверим, сможем ли мы подключиться к песочнице (речь идет о тестовой версии, только для целей разработки) с помощью сгенерированных нами PEM-файлов. В качестве песочницы используется защищенный APNS-сервер. Выполните в окне терминала следующую команду:

openssl s_client — connect gateway.sandbox.push.apple.com:2195 \

— cert PushCertificate.pem — key PushKey.pem

Если все будет нормально, то на данном этапе потребуется ввести фразу-пароль для вашего закрытого ключа. Помните ее? Хорошо, вводите. Если соединение будет успешно установлено, откроется OpenSSL, ожидающий от вас нескольких символов в качестве ввода. После получения этого ввода соединение будет закрыто. Введите любые случайные символы и нажмите Enter (Ввод). Соединение закрыто. Вам удалось успешно связаться с APNS-сервером, воспользовавшись вашим сертификатом и закрытым ключом.

Теперь напишем несложный PHP-сценарий для отправки простого пуш-уведомления на устройство. Но прежде чем мы двинемся дальше, необходимо получить маркер пуш-уведомлений, действующий на нашем устройстве. Мы должны получить его в таком формате, который понятен PHP. iOS инкапсулирует маркер пуш-уведомления в экземпляр NSData, но PHP неизвестно, что такое NSData. Нам нужно преобразовать этот маркер в строку, которую мы сможем использовать в нашем PHP-сценарии. Для этого считываем весь маркер байт за байтом и преобразуем каждый байт в шестнадцатеричное строковое представление:

— (void) application:(UIApplication *)application

didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken{

/* Каждый байт данных будет преобразован в свое шестнадцатеричное

значение, например 0x01 или 0xAB. При этом часть 0x отбрасывается.

Итак, для представления 1 байта нам потребуются два символа, поэтому

здесь указано * 2 */

NSMutableString *tokenAsString = [[NSMutableString alloc]

initWithCapacity: deviceToken.length * 2];

char *bytes = malloc(deviceToken.length);

[deviceToken getBytes: bytes];

for (NSUInteger byteCounter = 0;

byteCounter < deviceToken.length;

byteCounter++){

char byte = bytes[byteCounter];

[tokenAsString appendFormat:@"%02hhX", byte];

}

free(bytes);

NSLog(@"Token = %@", tokenAsString);

}

Запустите ваше приложение и убедитесь, что маркер устройства выводится на консоль, вот так:

Token = 05924634A8EB6B84437A1E8CE02E6BE6683DEC83FB38680A7DFD6A04C6CC586E

Отметьте себе этот маркер устройства, так как мы будем пользоваться им в PHP-сценарии:

Тёмная тема

Шрифт:

Сбросить

Интервал:

Закладка:

Сделать


Вандад Нахавандипур читать все книги автора по порядку

Вандад Нахавандипур - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




iOS. Приемы программирования отзывы


Отзывы читателей о книге iOS. Приемы программирования, автор: Вандад Нахавандипур. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
Большинство книг на сайте опубликовано легально на правах партнёрской программы ЛитРес. Если Ваша книга была опубликована с нарушениями авторских прав, пожалуйста, направьте Вашу жалобу на PGEgaHJlZj0ibWFpbHRvOmFidXNlQGxpYmtpbmcucnUiIHJlbD0ibm9mb2xsb3ciPmFidXNlQGxpYmtpbmcucnU8L2E+ или заполните форму обратной связи.
img img img img img