Отправка iOS Push с сервера Parse через Back4App
19 мин
отправка push уведомлений ios с вашего сервера parse swift введение в этом разделе объясняется, как вы можете отправлять push уведомления с помощью панели управления parse через back4app вот как это будет выглядеть в любое время вы можете получить доступ к полному проекту, созданному с помощью этого учебника, в нашем репозитории github https //github com/templates back4app/ios install sdk чтобы завершить этот быстрый старт, вам нужно xcode https //developer apple com/xcode/ приложение, созданное в back4app следуйте учебнику по созданию нового приложения parse https //www back4app com/docs/get started/new parse app чтобы узнать, как создать приложение parse в back4app приложение ios, подключенное к back4app примечание следуйте учебнику по установке parse sdk (swift) https //www back4app com/docs/ios/parse swift sdk чтобы создать проект xcode, подключенный к back4app платная учетная запись разработчика apple 1 создайте свои push сертификаты в центре разработчиков apple обратите внимание на шаги ниже, потому что вам нужно выполнить их в точном порядке если push уведомления не приходят, мы не можем сделать много для отладки, кроме как снова пройтись по шагам перейдите к цели и перейдите в возможности нажмите на push уведомления затем включите push уведомления это создаст ваш идентификатор приложения и установит ваши права 2\ перейдите в центр разработчиков apple https //developer apple com/ и войдите в свою учетную запись 3\ нажмите на сертификаты, идентификаторы и профили 4\ в разделе сертификатов нажмите на знак плюс выберите создание сертификата push уведомлений apple для песочниц 5\ выберите ваш идентификатор приложения, который соответствует идентификатору приложения, используемому в вашем текущем проекте xcode 6\ теперь вас попросят предоставить запрос на подпись сертификата или csr вы создадите свой csr на своем компьютере mac 7\ на вашем компьютере mac откройте доступ к связке ключей 8\ далее запросите сертификат у удостоверяющего центра 9\ выберите свой адрес электронной почты, затем убедитесь, что вы сохранили свой сертификат на диск сохраните его в папке на рабочем столе под названием pushcerts 10\ вернитесь в центр разработчиков apple загрузите свой csr и нажмите продолжить 11\ скачайте ваш сертификат apn для разработки в ту же папку, названную pushcerts назовите его apn dev 12\ давайте начнем процесс заново на этот раз мы создадим сертификаты для продакшн уведомлений вам нужны оба для тестирования и релиза выберите apple push notification service ssl (sanbox & production) 13\ загрузите ваш csr, который вы создали ранее, и нажмите продолжить 14\ скачайте ваш сертификат apn для продакшн в ту же папку, названную pushcerts назовите его apn prod 15\ на этом этапе у вас должно быть 3 файла в папке pushcerts дважды щелкните на файлы apn prod и apn dev, чтобы добавить их в ваш связку ключей 16\ откройте связку ключей и найдите файлы в связке ключей щелкните на каждом из них и нажмите экспорт вам нужно будет экспортировать их в формате p12 в папку pushcerts назовите файл для разработки cert dev pushcertificates p12, а файл для продакшена назовите prod pushcertificate p12 17\ вам будет предложено добавить пароль к вашему экспортированному файлу просто оставьте его пустым однако вам нужно будет ввести ваш мастер ключ для подписания сертификата, и это нормально 18\ теперь, когда вы добавили свои файлы p12, ваша папка должна выглядеть так если у вас есть все эти файлы в папке, вы можете перейти к шагу 2 если у вас нет ни одного из этих файлов, вернитесь к началу и выясните, где вы пропустили шаг 2 добавление ваших p12 сертификатов в back4app вы почти закончили разве вы не взволнованы? перейдите на сайт back4app https //www back4app com/ , войдите в систему, найдите свое приложение и нажмите на \<font color="#2166ae">ios push уведомление\</font> 2\ загрузите сертификат разработки и сертификат продакшн и нажмите отправить для каждого 3\ после того как вы загрузили оба сертификата, ваш экран должен выглядеть так 3 настройка вашего проекта xcode для получения push уведомлений откройте файл appdelegate swift вашего проекта, чтобы создать объект установки push добавьте фреймворк usernotifications в верхней части файла appdelegate swift https //github com/mpc20001/ios swift push back4app/blob/master/addingparsesdk/appdelegate swift#l10 l11 \#import usernotifications 2\ добавьте код ниже внутри функции didfinishlaunchingwithoptions и убедитесь, что он находится перед оператором ‘return true’ appdelegate swift https //github com/mpc20001/ios swift push back4app/blob/master/addingparsesdk/appdelegate swift#l25 l30 unusernotificationcenter current () requestauthorization (options \[ alert, sound, badge, carplay ]) { (granted, error) in print ("разрешение предоставлено \\(granted)") guard granted else { return } self getnotificationsettings () } 3\ добавьте следующие фрагменты кода в ваш файл appdelegate swift под функцией didfinishlaunchingwithoptions этот код запросит разрешение на получение push уведомлений при первом запуске приложения убедитесь, что вы согласны с этим запросом, иначе ваше приложение не сможет получать уведомления он также обработает полученный токен, когда запрос будет одобрен, и сохранит его как объект установки на back4app appdelegate swift 1 func getnotificationsettings() { 2 unusernotificationcenter current() getnotificationsettings { (settings) in 3 print("notification settings \\(settings)") 4 guard settings authorizationstatus == authorized else { return } 5 uiapplication shared registerforremotenotifications() 6 } 7 } 8 9 func application( application uiapplication, 10 didregisterforremotenotificationswithdevicetoken devicetoken data) { 11 createinstallationonparse(devicetokendata devicetoken) 12 } 13 14 func application( application uiapplication, 15 didfailtoregisterforremotenotificationswitherror error error) { 16 print("failed to register \\(error)") 17 } 18 19 func createinstallationonparse(devicetokendata\ data){ 20 if let installation = pfinstallation current(){ 21 installation setdevicetokenfrom(devicetokendata) 22 installation saveinbackground { 23 (success bool, error error?) in 24 if (success) { 25 print("you have successfully saved your push installation to back4app!") 26 } else { 27 if let myerror = error{ 28 print("error saving parse installation \\(myerror localizeddescription)") 29 }else{ 30 print("uknown error") 31 } 32 } 33 } 34 } 35 } 4\ протестируйте его, запустив ваше приложение вы должны увидеть это в вашем симуляторе 5\ с этого момента вы должны использовать физическое устройство, iphone или ipad уведомления не работают с симулятором xcode если у вас нет физического устройства, вы не сможете продолжить обучение как только вы подключите ваше физическое устройство к вашему mac и xcode, попробуйте запустить приложение на вашем устройстве через xcode когда вы увидите запрос на разрешение на отправку уведомлений, нажмите «одобрить» 4 протестируйте ваше приложение перейдите на сайт back4app https //www back4app com/ войдите в систему, найдите ваше приложение и нажмите на \<font color="#2166ae">панель управления\</font> сначала проверьте, что запись установки вашего устройства видна в таблице установок 3\ затем нажмите на \<font color="#2166ae">push\</font> > \<font color="#2166ae">отправить новый push\</font> и создайте аудиторию для вашего push уведомления 4\ напишите ваше сообщение и посмотрите предварительный просмотр, нажав на \<font color="#2166ae">ios\</font> опцию 5\ если вы уже просмотрели push уведомление и хотите отправить, нажмите на \<font color="#2166ae">отправить push\</font> вы можете изучить другие варианты для push уведомлений на \<font color="#2166ae">parse dashboard\</font> там также можно посмотреть на \<font color="#2166ae">прошлые push уведомления\</font> которые вы отправили и на \<font color="#2166ae">аудитории\</font> которые вы создали для них готово! на этом этапе вы можете отправлять push уведомления, используя \<font color="#2166ae">parse dashboard\</font> через back4app!