Дополненная реальность со Swift 5 – с чего начать

Дополненная реальность со Swift 5 – с чего начать

Дополненная реальность со Swift 5 – с чего начать

Представьте, что предел между виртуальным и реальным миром исчез.

Дополненная реальность – это результат использования технологии для наложения информации, такой как звуки, изображения, тексты, на реальный мир, который мы видим.

Шаблоны в iOS

Шаблоны в iOS

Шаблоны в iOS

Сегодня мы будем закреплять/вспоминать/учить шаблоны в iOS. Некоторые будем рассматривать детально, некоторых слегка коснемся, про другие совсем ничего не скажем :)

Идеальный JSON-анализатор для Core Data - с возможностью кодирования от Apple

Идеальный JSON-анализатор для Core Data - с возможностью кодирования от Apple

Найдите идеальный JSON-анализатор для Core Data - с возможностью кодирования от Apple

Доброго всем времени суток уважаемые коллеги iOS-ники, наверняка каждый из вас работал с сетью и занимался парсингом данных c JSON. Для этого процесса есть куча библиотек, всевозможных инструментов которые можно юзать. Некоторые из них сложные, а некоторые простые.

Как интегрировать Apple Pay в мобильное приложение

Как интегрировать Apple Pay в мобильное приложение

Интеграция Apple Pay в мобильные приложения

В ходе презентации, состоявшейся 9 сентября 2014 года, компания Apple представила Apple Pay — собственную систему мобильных платежей.

Apple pay позволяет пользователям iPhone 6 и iPhone 6+, а также обладателям новых версий Apple Watch совершать покупки в интернет-магазинах прямо сейчас, пользоваться интеграцией приложения apple pay, а также совершать платежи с помощью технологии NFC (Near Field Communication). Для авторизации платежей используются технологии Touch ID или Face ID.

Здесь мы узнаем, как интегрировать apple pay в мобильные приложения, которые разработаны и требуют интеграции платежных опций.

Apple mobile Pay совместим с такими считывателями бесконтактных карт, как Visa PayWave, MasterCard PayPass, American Express ExpressPay.

Карта покрытия стран Apple Pay (по состоянию на 17 мая 2018 года). Темно-синий: запущен и работает Светло-голубой: планируется

Начнем

Мы будем использовать последнюю версию Apple Pay (по состоянию на 5 ноября 2018 года), Swift 4.2 и Xcode 10.1.

Для интеграции Apple Pay в мобильное приложение у вас должен быть зарегистрированный и оплаченный аккаунт разработчика (https://developer.apple.com).

<фигура>

Мы создаем проект на основе Single View Application.

<фигура>

Следующим шагом должно стать создание имени проекта. Я буду использовать ApplePayExample.

Далее мы сталкиваемся с классом ViewController. Здесь мы будем работать на самом деле.

Приложение Apple Pay Adjustment в приложении.

Для интеграции Apple Pay мы должны использовать библиотеку PassKit.

PassKit позволяет:

  1. Добавить Apple Pay в мобильное приложение;
  2.  управлять картами в приложении Wallet App.

Для настройки Apple Pay нам необходимо сделать 3 обязательных шага:

  1. Для создания ID продавца;
  2. Для включения Apple Pay в Xcode;
  3. Создать тестового пользователя.

Давайте перейдем по адресу https://developer.apple.com, авторизуемся с помощью нашего аккаунта и перейдем в раздел Certificates, Identifiers & Profiles.

Перейдите в группу Идентификаторы, выберите вкладку App IDs. Заполните все необходимые поля в соответствии с вашим приложением и следуйте дальнейшим инструкциям.

<фигура>

После этого необходимо выбрать Merchant IDs в группе Identifiers.

<фигура>

Создайте Merchant ID для вашего приложения, следуя приведенным инструкциям.

Идентификатор рекомендуется назвать следующим образом "merchant" + Bundle ID. Например: merchant.com.myapp

.

Наберитесь терпения, мы почти закончили подготовку к проекту.

Следующим шагом нам нужно перейти в раздел https://appstoreconnect.apple.comUsers and Access, выбрать Testers в разделе Sandbox и создать тестового пользователя, следуя инструкциям.

Мы нуждаемся в пользователе для тестирования платежей.

Шаг 1

<фигура>

Шаг 2

<фигура>

Шаг 3

Переходим к настройке Xcode

Шаг 1

Сначала нам нужно включить Apple Pay в Xcode Capabilities и добавить Merchant ID, созданный ранее.

Шаг 2

<фигура>

Теперь, когда Apple Pay включен, мы можем перейти к самой интересной части — к написанию кода.

<фигура>

Сначала откройте Main.storyboard и добавьте кнопку.

Затем переходим к ViewController.swift.

Для начала нам нужно импортировать библиотеку PassKit: import PassKit

.

// MARK - Свойства
  private var paymentRequest: PKPaymentRequest ={
    let request = PKPaymentRequest()
    request.merchantIdentifier ="merchant.stfalcon.com.applepayexample"
    request.supportedNetworks =[.visa, .masterCard]
    request.supportedCountries =["UA"]
    request.merchantCapabilities = .capability3DS
    request.countryCode ="UA"
    request.currencyCode ="UAH"
    request.paymentSummaryItems =[PKPaymentSummaryItem(label:"iPhone Xs 64 Gb", amount:34999.99)]return request
  }()

Следующим шагом мы должны создать экземпляр класса PKPaymentRequest

// MARK: - @IBActions
    @IBAction func purchase(_ sender: Any?){if let controller = PKPaymentAuthorizationViewController(paymentRequest: paymentRequest){
            controller.delegate = self
            present(controller, animated:true, completion:nil)}}

И создадим IBAction для кнопки.

При открытии PKPaymentAuthorizationViewController мы должны подписаться на его делегат, чтобы видеть статус транзакции.

После этого нам нужно реализовать методы делегата. Мы смоделируем успешную транзакцию следующим образом:

extension ViewController: PKPaymentAuthorizationViewControllerDelegate {
 
    func paymentAuthorizationViewController(_ controller: PKPaymentAuthorizationViewController, didAuthorizePayment payment: PKPayment, обработчик завершения: @escaping (PKPaymentAuthorizationResult)-> Void){
        completion(PKPaymentAuthorizationResult(status: .success, errors:nil))}
 
    func paymentAuthorizationViewControllerDidFinish(_ controller: PKPaymentAuthorizationViewController){
        controller.dismiss(animated:true, completion:nil)}
 
}

завершение(PKPaymentAuthorizationResult(status: .success, errors: nil))

Теперь мы готовы проверить Apple Pay.

Перед проверкой Apple Pay’ необходимо авторизоваться с помощью пользователя Sandbox, который был создан ранее, и добавить тестовую карту в iPhone.

Кроме того, необходимо провести авторизацию с помощью пользователя Sandbox.

Примеры тестовых карт:

MasterCard

  • FPAN: 5204 2477 5000 1471
  • Дата истечения срока действия: 11/2022
  • CVC: 111

Виза

  • FPAN: 4761 1200 1000 0492
  • Дата истечения срока действия: 11/2022
  • CVV 533

Запустите проект и нажмите кнопку «Оплатить».

Транзакция прошла успешно. Поздравляем, теперь вы знаете, как интегрировать Apple Pay в мобильное приложение.

А как насчет статистики?

Apple не предоставляет никакой статистики по Apple Pay, но, по мнению экспертов, пользователи этого платежного сервиса составляют около ~31% (> 252 млн человек) от общего числа пользователей iPhone.

Глава компании Тим Кук также недавно упоминал, что в 3-м квартале 2018 года с помощью этого сервиса было совершено почти 1 миллиард транзакций.

Количество банков, поддерживающих Apple pay, также увеличивается. В июне 2018 года Apple объявила, что более 4 900 банков поддерживают этот вариант оплаты по всему миру.

Зачем вам нужен Apple Pay?

Я полагаю, что раздел выше объясняет, почему Apple Pay нужен вам.

Но как это работает на самом деле? — Вы можете совершать покупки онлайн (через браузер Safari), а также с помощью приложений. Вам не нужно держать при себе карты, все, что вам нужно - просто прикоснуться к своему iPhone (если у вас есть Touch ID) или просто улыбнуться необходимым специальным датчикам (если у вас есть Face ID). Этого будет достаточно, чтобы совершить покупку.

Является ли это безопасным? спросите вы. Да, однозначно, это ’безопасно&rsquo ;. Ваше устройство не передает ваши финансовые данные во время транзакции, вместо этого оно генерирует специальный одноразовый токен и обменивается им во время операции оплаты.

В случае, если вы:

  1. Пользователь
  2. Бизнесмен
  3. разработчиком

Вам обязательно нужно внедрить эту технологию (в свой бизнес, проект или свою жизнь). Благодаря этой технологии вы сможете отказаться от физического использования карт.

Заглянем под капот Doctrine 2

Заглянем под капот Doctrine 2

Doctrine 2

Пожалуй, я не совру, если скажу, что в экосистеме Symfony наиболее часто используемой ORM является Doctrine. Поэтому изучение этой библиотеки крайне важно для Symfony-разработчика. В данной статье предлагаю заглянуть «под капот» этого Мустанга в мире ORM-ок и выяснить, на базе каких абстракций и паттернов построена эта библиотека.