В предыдущий article 1 Я представил мобильный задний конец как сервис (MBaaS), которая направлена на предоставление разработчикам приложений возможность создавать легко новую функцию-полной кросс-платформенных отечественных и веб-приложений.
Следующим шагом является внедрение полной демо-приложения с использованием этих идей.Благодаря этому реальном рабочее приложение, вы сможете увидеть районы, в которых MBaaS издержки.Это первая часть будет ходить вас через демо приложение для обмена сообщениями на питание от применения Kinvey и изучить, как использовать управление пользователями, файловое хранилище и хранилище данных .
Вторая часть будет завершена демо-версию и продемонстрировать, как использовать две основные функциональные части Kinvey: разрешения, предоставленные хранилищем данных, и нажмите уведомления, которые активируются с помощью бизнес-логики функциональности .
Настройка Up
Прежде чем прыгать в демо-приложении, я хочу, чтобы выделить несколько моментов.Во-первых, потому, что я использую реальные приложения для обсуждения MBaaS, знание платформы разработки будет очень полезно.Я используя IOS с Swift.Кроме того, зная, как интегрировать с серверными услуг, несомненно, будет полезно для того, чтобы понять больше о том, что Kinvey делает под капотом.Хотя все это полезно, полный исходный приложения будет включен;не стесняйтесь проанализировать код в своем собственном темпе .
Во-вторых, потому, что демо-версия имеет больше внимания предприятия (в отличие от потребительского внимания), я выбрал Kinvey 2 для платформы MBaaS.В последняя article 3 Я шел через процесс оценки MBaaS поставщиков.Обратите внимание, что Kinvey не бесплатная услуга, и условия лицензирования, прикрепленных к ее SDK, (как можно было бы ожидать).Лицензионные условия прилагаются к каждому SDK загрузки.Вы можете получить более подробную информацию по следующим ссылкам:
Демо Application
В течение последних трех лет, несколько клиентов обратились ко мне о разработке внутреннего платформу обмена сообщениями для своей организации.Эта потребность привела к успеху таких компаний, как Slack 6 (в которых мы внутренне в Универсальный Mind 7 ) и другие подобные ему.Потому что это был общий запрос, я хотел посмотреть, что было бы предпринять для выполнения основного раствора один-к-одному обмена сообщениями для организации поверх раствора MBaaS .
Чтобы помочь вам понять эти понятия в реальном приложении, я предоставил весь исходный код приложения.Вы можете проверить это на Github, “ кулера Demo 8 .”
Примечание: Для получения дополнительной информации о том, как выбрать между доступными вариантами MBaaS, пожалуйста, увидеть первоначальный статью в этой серии, “. Понимание Mobile Back End в Service 9 ”
Резюме Requirements
Чтобы проиллюстрировать, как решение MBaaS может привести приложение, как этот, мы должны встретиться несколько ключевых требований.Люди должны быть в состоянии сделать следующее с приложением:
- Зарегистрироваться и создать свой профиль (включая имя, название, изображение профиля, адрес электронной почты и пароль);
- Войти (и обязаны войти только один раз — по крайней мере, пока они не выйти);
- Обмен один к одному сообщениями с другими членами (видимых только отправителю и получателю и недоступных для других пользователей);
- Просматривать каталог участников, которые в настоящее время имеют учетную запись на платформе;
- Выйти;
- Управлять и обновлять свой профайл информации;
- Быть предупреждены через Push Notification, что они получили новое сообщение .
В следующих разделах подробно, как я использовал Kinvey для удовлетворения этих требований.Хотя я won’ вдаваться в подробности о том, была создана каждая часть приложения, я дам полный контекст тех областях, где Kinvey было привлечено .
Технический Details
Демонстрационное приложение является приложением IOS ориентации IOS 8.Он использует Свифт (Xcode 6.1.1 и IOS 8.1.3) .
Пользовательский интерфейс был создан в соответствии со стандартными принципами интерфейс для IOS.Он использует Авто Layout 12 (как в режиме раскадровки и программно).Создание этого интерфейса выходит за рамки этой статьи, но, надеюсь, пример кода будет полезно для ваших IOS приложений .
Начало работы с Kinvey
Если вы следуете, вы, вероятно, хотите построить исходный код и запустить приложение самостоятельно.Чтобы сделать это, вам нужно как создать приложение Kinvey и включить учетные данные для приложения в коде .
Создание Kinvey App и Environment
Для создания приложения Kinvey и окружающей среды, необходимо будет создать Kinvey account 13 .После регистрации, выберите “Начать с Вашим первым App.” На этой странице дать ваше приложение имя, выберите IOS и платформы, а затем нажмите __ 6 “Создать приложение.” |
От здесь, вы будете иметь приложение создано с одной среде разработки.Нажатие на окружающую среду “развитие” приведет вас к консоли.В консоли вы увидите, как ваш appKey
и appSecret
в правом верхнем углу.Скопируйте эти кусочки информации, поскольку you’ должны будете включить их в приложение IOS .
Настройка IOS Application
После того как вы создали свое приложение Kinvey и собрал свои учетные данные, получить код из репозитория.Затем откройте AppDelegate.swift
файл и обновлять эти значения в application:DidFinishLaunchingWithOptions:
метод .
// Extracted from AppDelegate.swift (http://tuck.cc/1w7wkyI)
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
// --------------------------------------------------------------------
// INCLUDE YOUR KINVEY CREDENTIALS HERE
// --------------------------------------------------------------------
let appKey = ""
let appSecret = ""
//---------------------------------------------------------------------
…
}
После этого на месте, вы должны быть в состоянии запустить приложение, как ожидалось.Если вы хотите, чтобы запустить приложение на устройстве, вам придется обновить код подписания в виде профилей резервов (как и в любом приложении IOS) .
- Для получения дополнительной информации о настройке приложения IOS с Kinvey, проверить “ Получение Started 16 ” учебник .
Management
Один основополагающим элементом любой MBaaS является управление пользователями.Это приложение будет использовать управление пользователями управлять отдельными учетными записями пользователей и ихсоответствующая информация о профиле, а также обеспечить каталог всех пользователей в системе.Так же, как с остальными функциональности мы расскажем, эта интеграция осуществляется через Kinvey-х IOS SDK 17 .
Создание User
Первый шаг в этом процессе заключается в позволяют пользователю создать учетную запись.Когда пользователь запускает приложение, они приземлятся на том, что позволяет им либо войти или зарегистрироваться.Если пользователь выбирает “Sign Up”, они будут доставлены в “Sign Up” страницу, которая будет вести их через процесс ввода их профиля.Когда этот процесс завершится, ниже код выполняется, что создает учетную запись и выход пользователя в приложение .
В этом примере, вы увидите KCSUser
класс.Этот класс обрабатывает представление пользователь, а также шлюз для всех операций, связанных с управлением пользователя:
// Extracted from SignupViewController.swift (http://tuck.cc/1vsaWcr)
// Set the parameters of the user
var userParams = [
KCSUserAttributeGivenname : firstNameField.text,
KCSUserAttributeSurname : lastNameField.text,
KCSUserAttributeEmail : emailField.text,
kWaterCoolerUserTitleValue : titleField.text
];
// Save the user to Kinvey
KCSUser.userWithUsername(emailField.text, password: passwordField.text, fieldsAndValues: userParams) { (user:KCSUser!, error:NSError!, result:KCSUserActionResult) in
if(error != nil) {
println("USER NOT CREATED - ERROR: " + error.description)
} else {
// User created successfully
// Do other tasks, such as uploading profile picture to the file store
}
}
В этом случае, поля для имени, фамилии и адрес электронной почты включают в KCSUser
объекта.Тем не менее, Kinvey позволяет сохранять другие части данных в этом объекте, а также.User’ с титул будет сохранен в одном из этих дополнительных полей.Пристройка к KCSUser
объекта также включены (как показано ниже), чтобы сделать его проще обращаться к этому значению для пользователя внутри приложения:
// Extracted from KinveyExtensions.swift (http://tuck.cc/1vsb5N7)
// Create a constant for accessing the title key from the user object
let kWaterCoolerUserTitleValue = "title"
extension KCSUser {
var title:String {
return self.getValueForAttribute(kWaterCoolerUserTitleValue) as String!
}
}
Вход In
Если пользователь выбирает опцию для входа в систему с целевой страницы, они будут иметь возможность ввести свой адрес электронной почты и пароль (который они вошли в процессе регистрации).Они представлены с предупреждением, если их попытка бы …
Если вы хотите прочитать полностью статью, посетите сайт наших спонсоров