SlideShare una empresa de Scribd logo
1 de 22
Descargar para leer sin conexión
Accelerating Mobile
Application Development
with Mobile Cloud Services
Todd Kaplinger
Senior Technical Staff Member

MobileFirst for iOS Cloud Architect
@todkap
© 2015 IBM Corporation
The new normal of IT focus
and investment…
Three methods of new value creation:
Alone, each of these has immense potential.
Integrated, they change everything.
Drive people-centric
Engagement
for new profit
channels
Utilize Data
as the new basis
of competitive
advantage
Leverage Cloud
as growth engine
for business
Building “engaging” apps is hard
• Time to market requirements must be quicker… weeks not
months
• More experimental in nature… LEAN approaches to testing the
market are needed.
• Mobile brings its own set of challenges… from device
fragmentation to scale to surges of demand to connecting
securely into enterprise data
• Greater data capture requirements… on all apps to drive
analytics
• Developers of engaging apps want to use multiple languages
and Cloud APIs…
The IBM MobileFirst Platform contains the
ingredients for a successful mobile program
Available on premises or in the cloud.
Efficiently
Develop &
Integrate
Easily
Secure
Personalize
Engagements
Continuously
Deliver
The three essential ingredients to
building apps for the “new normal”
A platform to secure your
apps, manage their
lifecycle, and integrate
them into the enterprise
Cloud APIs that can be
glued together to quickly
create new apps at scale
Synchronized data across
devices that can scale to
meet mobile demand
MobileFirst Apps for iOS
Swift + iOS8
Simple TODO Application
BlueList Application
• Bluemix Hosted
• Leverages MobileFirst Services Starter
Boilerplate
• Cloudant NoSQL DB
• Push for iOS 8
• Advanced Mobile Access
• Linked identity to data stored in cloud
Bluemix
Google+
Identity
Custom
Authentication
Facebook
Authentication
BlueList Application
• Simple TODO list for tracking outstanding
items
• Focus on Swift version designed for iOS8
• CocoaPods used for dependency
management
• Available on command line via GIT
DevOps
CocoaPods
GIT Hosted on DevOps
BlueList in Swift
Variant of BlueList Mobile Data written in Swift
Simple TODO list for tracking outstanding items
(IBM_Item.swift Class)

(2 ViewControllers / One AppDelegate / One Storyboard)
Leverages Bolts Framework to simplify data
access patterns
10
https://github.com/BoltsFramework/Bolts-iOS Data CRUD
BlueList Storyboard
DEMO
Acme Apparel Application
• Business to Consumer (B2C)
• Advanced Application
• 15 Unique Views
• 10 Persisted Data Objects
• Security Integration with Mobile First
Platform Advanced Mobile Access
• Push Notifications Support
• Integration with 3rd Party Weather Service
• MQA sentiment analysis and crash reporting
• Operational Analytics calculating usage
patterns
Google+ Identity
Advanced Mobile Access
• MobileFirst Services Starter
(for iOS 8)
• Authentication options
• Facebook
• Google+
• Custom authentication
• Register iOS app using bundle
id and version
• Custom authentication set up
through predefined REST API
• Use Apple Touch ID to secure
MobileFirst access tokens
Social Integration
• Google+ Authentication
• OAUTH2 Client Side Flow
• Native iOS Libraries with
Objective-C
• Authentication Scope
• Profile
• Access to user profile info
(email/preferred name/
photo)
• Integrated with Advanced
Mobile Access
/**
* Executed when the Google+ authentication flow returns control to the application.
*/
- (void)finishedWithAuth: (GTMOAuth2Authentication *)auth error: (NSError *) error {
if(!error){
[self queryGooglePlusUser];
}
}
/**
* Fetch the authenticated user's Google+ information.
*/
-(void) queryGooglePlusUser
{
GTLServicePlus* plusService = [[GTLServicePlus alloc] init];
plusService.retryEnabled = YES;
[plusService setAuthorizer:[GPPSignIn sharedInstance].authentication];
GTLQueryPlus *query = [GTLQueryPlus queryForPeopleGetWithUserId:@"me"];
[plusService executeQuery:query completionHandler:^(GTLServiceTicket *ticket,
GTLPlusPerson *person, NSError *error) {
if (error) {
GTMLoggerError(@"Error: %@", error);
} else {
[self buildCustomer:(person)];
}
}];
}
Cloudant NoSQL Database
• Fully managed Cloudant NoSQL database provides data layer that is
transparent and always on
• Client-side APIs provide intuitive environment for storing data on the cloud
• CRUD support, online and offline replication with only a few lines of code
• Map simple objects to JSON documents using default or custom object mapper
• Object Models - Items, Shopping Cart, Stores, and Purchase History
Shopping Cart
/*!
* Handles the logic for adding an item to the cart.
*/
-(void) addToCart:(Item *)itemToAdd withColor:(ColorObject*)color andSize:(NSString*)size
andItemURL:(NSString*)url
{
self.totalItems++;
NSString *itemKey = [self generateKey:itemToAdd withColor:color.colorName andSize:size];
self.total = [self.total decimalNumberByAdding:itemToAdd.price]];
if ([self.itemsInCart keyExists:itemKey]) {
CartItem *cartItem = (CartItem*)[self.itemsInCart objectForKey:itemKey];
cartItem.quantity++;
return;
}
CartItem *newItem = [[CartItem alloc] initWithItem:itemToAdd andSize:size
andColor:color andCartKey:itemKey andItemURL:url];
[self.itemsInCart addObject:newItem forKey:itemKey];
}
/*!
* Handles the logic for deleting an item from the cart.
*/
-(void)deleteFromCart:(NSInteger)itemIndex
{
CartItem *itemToDelete = [self.itemsInCart objectAtIndex:itemIndex];
self.totalItems = self.totalItems - itemToDelete.quantity;
NSDecimalNumber *totalToDelete = [itemToDelete.item.price
decimalNumberByMultiplyingBy:itemToDelete.quantity];
self.total = [self.total decimalNumberBySubtracting:totalToDelete];
[self.itemsInCart removeObjectForKey:itemToDelete.cartKey];
}
Push Notification Integration
• Customer subscribes to notifications
on order updates after logging in
• Visual notifications
• Alerts appear to inform employee of
a new purchase
- (void) application:(UIApplication *)application
didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken{
NSArray *tag = [NSArray arrayWithObjects:@"customerTag", nil];
IMFPushClient *pushService = [IMFPushClient sharedInstance];
pushService.environment = @"sandbox";
[pushService registerDeviceToken:deviceToken completionHandler:
^(IMFResponse *response, NSError *error) {
if (nil != error){
NSLog(@"Error register device token with error: %@", error);
} else {
NSLog(@"Device has been registered with response: %@", response);
[pushService subscribeToTags:tag completionHandler:
^(IMFResponse *response, NSError *error) {
NSLog(@"Subscribed to tag with response: %@", response);
}];
}
}];
}
- (void)application:(UIApplication *)application didReceiveRemoteNotification:
(NSDictionary *)userInfo
{
NSString *message = [[[userInfo valueForKey:@"aps"]
valueForKey:@"alert"] valueForKey:@"body"];
[UIApplication sharedApplication].applicationIconBadgeNumber =
[[[userInfo objectForKey:@"aps"] objectForKey:@"badgecount"] intValue];
[self showNotification:message];
if ([[[userInfo valueForKey:@"aps"] valueForKey:@"category"]
isEqualToString:@"PURCHASE_CHANGE"]){
if (application.applicationState == UIApplicationStateActive){
[[self notificationCenter] postNotificationName:@"Purchase_Change"
object:nil userInfo:userInfo];
[[PushService pushInstance] resetPushCounter];
} else if (application.applicationState == UIApplicationStateBackground
|| application.applicationState == UIApplicationStateInactive){
[[self notificationCenter] postNotificationName:@"Purchase_Change"
object:nil userInfo:userInfo];
[[PushService pushInstance] resetPushCounter];
}
}
}
• Notifies a customer if the status
of her/his order has changed
• Data channel
• Customers’ purchase statuses
are updated when the view is
reloaded
• Full support for interactive
notifications in iOS 8
• Uses tags and subscriptions to
send targeted messages to
customers
Location
• Device level APIs for obtaining
user’s current location
• APIs map store locations in close
proximity to the user
• User can denote preferred store
location and obtain directions.
Weather Service
• Server side integration logic
written in Node.js
• APIs get current weather for
store locations using 3rd party
weather service
Mobile Quality Assurance
• Admin dashboard on Bluemix
• Pre-production or production
SDKs
• Capture device metrics with
every bug report
• Analyze errors by build, device,
etc.
MQA Dashboard
AcmeApparel
AcmeApparel
Mobile Analytics
• Operational Analytics
catered to the mobile app
developer
• Request metrics are
automatically captured for the
various Mobile Cloud Services
• Capture mobile OS levels
• Analyze errors by build,
device, etc.
Data Analytics
Push Analytics
Security Analytics
DEMO
Thank You!
Todd Kaplinger
@todkap
© 2015 IBM Corporation

Más contenido relacionado

La actualidad más candente

Bluemix Mobile Cloud Services - Accelerating Mobile App Development
Bluemix Mobile Cloud Services - Accelerating Mobile App DevelopmentBluemix Mobile Cloud Services - Accelerating Mobile App Development
Bluemix Mobile Cloud Services - Accelerating Mobile App DevelopmentTodd Kaplinger
 
From Developer to Cloud Solutions Architect
From Developer to Cloud Solutions ArchitectFrom Developer to Cloud Solutions Architect
From Developer to Cloud Solutions ArchitectLorenzo Barbieri
 
Azure AD B2C – integration in a bank
Azure AD B2C – integration in a bankAzure AD B2C – integration in a bank
Azure AD B2C – integration in a bankKseniia Lvova
 
Introducing Power BI Embedded
Introducing Power BI EmbeddedIntroducing Power BI Embedded
Introducing Power BI EmbeddedMostafa
 
The bits and pieces of Azure AD B2C
The bits and pieces of Azure AD B2CThe bits and pieces of Azure AD B2C
The bits and pieces of Azure AD B2CAnton Staykov
 
Running Regulated Workloads on Azure PaaS services (DogFoodCon 2018)
Running Regulated Workloads on Azure PaaS services (DogFoodCon 2018)Running Regulated Workloads on Azure PaaS services (DogFoodCon 2018)
Running Regulated Workloads on Azure PaaS services (DogFoodCon 2018)Jeremy Gray
 
Building Mobile Apps on AWS at Websummit Diublin
Building Mobile Apps on AWS at Websummit DiublinBuilding Mobile Apps on AWS at Websummit Diublin
Building Mobile Apps on AWS at Websummit DiublinAmazon Web Services
 
Azure AD B2C An Introduction - DogFoodCon 2018
Azure AD B2C An Introduction - DogFoodCon 2018Azure AD B2C An Introduction - DogFoodCon 2018
Azure AD B2C An Introduction - DogFoodCon 2018Jeremy Gray
 
2015.04.23 Azure Mobile Services
2015.04.23 Azure Mobile Services2015.04.23 Azure Mobile Services
2015.04.23 Azure Mobile ServicesMarco Parenzan
 
Aplicaciones Xamarin conectadas y desconectadas con Azure
Aplicaciones Xamarin conectadas y desconectadas con AzureAplicaciones Xamarin conectadas y desconectadas con Azure
Aplicaciones Xamarin conectadas y desconectadas con AzureChristian Melendez
 
Azure AD B2C Webinar Series: Custom Policies Part 2 Policy Walkthrough
Azure AD B2C Webinar Series: Custom Policies Part 2 Policy WalkthroughAzure AD B2C Webinar Series: Custom Policies Part 2 Policy Walkthrough
Azure AD B2C Webinar Series: Custom Policies Part 2 Policy WalkthroughVinu Gunasekaran
 
Firebase on Android: The Big Picture
Firebase on Android: The Big PictureFirebase on Android: The Big Picture
Firebase on Android: The Big PictureSriyank Siddhartha
 
Serverless iPaaS in Azure (IDU)
Serverless iPaaS in Azure (IDU)Serverless iPaaS in Azure (IDU)
Serverless iPaaS in Azure (IDU)Daniel Toomey
 
Microsoft Azure News - November 2021
Microsoft Azure News - November 2021Microsoft Azure News - November 2021
Microsoft Azure News - November 2021Daniel Toomey
 
Intelligent Cloud Conference: Azure AD B2C Application security made easy
Intelligent Cloud Conference: Azure AD B2C Application security made easyIntelligent Cloud Conference: Azure AD B2C Application security made easy
Intelligent Cloud Conference: Azure AD B2C Application security made easySjoukje Zaal
 
Azure AD B2C Webinar Series: Identity Protocols OIDC and OAuth2 part 2
Azure AD B2C Webinar Series: Identity Protocols OIDC and OAuth2 part 2Azure AD B2C Webinar Series: Identity Protocols OIDC and OAuth2 part 2
Azure AD B2C Webinar Series: Identity Protocols OIDC and OAuth2 part 2Vinu Gunasekaran
 
APIs, APIs Everywhere!
APIs, APIs Everywhere!APIs, APIs Everywhere!
APIs, APIs Everywhere!BIWUG
 
Serverless integrations using Azure Logic Apps (intro)
Serverless integrations using Azure Logic Apps (intro)Serverless integrations using Azure Logic Apps (intro)
Serverless integrations using Azure Logic Apps (intro)Callon Campbell
 
Microsoft Azure IoT 手把手實作 @ K.NET by Maduka (2017-8-12)
Microsoft Azure IoT 手把手實作 @ K.NET by Maduka (2017-8-12)Microsoft Azure IoT 手把手實作 @ K.NET by Maduka (2017-8-12)
Microsoft Azure IoT 手把手實作 @ K.NET by Maduka (2017-8-12)Jeff Chu
 

La actualidad más candente (20)

Bluemix Mobile Cloud Services - Accelerating Mobile App Development
Bluemix Mobile Cloud Services - Accelerating Mobile App DevelopmentBluemix Mobile Cloud Services - Accelerating Mobile App Development
Bluemix Mobile Cloud Services - Accelerating Mobile App Development
 
From Developer to Cloud Solutions Architect
From Developer to Cloud Solutions ArchitectFrom Developer to Cloud Solutions Architect
From Developer to Cloud Solutions Architect
 
Azure AD B2C – integration in a bank
Azure AD B2C – integration in a bankAzure AD B2C – integration in a bank
Azure AD B2C – integration in a bank
 
Introducing Power BI Embedded
Introducing Power BI EmbeddedIntroducing Power BI Embedded
Introducing Power BI Embedded
 
The bits and pieces of Azure AD B2C
The bits and pieces of Azure AD B2CThe bits and pieces of Azure AD B2C
The bits and pieces of Azure AD B2C
 
Running Regulated Workloads on Azure PaaS services (DogFoodCon 2018)
Running Regulated Workloads on Azure PaaS services (DogFoodCon 2018)Running Regulated Workloads on Azure PaaS services (DogFoodCon 2018)
Running Regulated Workloads on Azure PaaS services (DogFoodCon 2018)
 
Building Mobile Apps on AWS at Websummit Diublin
Building Mobile Apps on AWS at Websummit DiublinBuilding Mobile Apps on AWS at Websummit Diublin
Building Mobile Apps on AWS at Websummit Diublin
 
Azure AD B2C An Introduction - DogFoodCon 2018
Azure AD B2C An Introduction - DogFoodCon 2018Azure AD B2C An Introduction - DogFoodCon 2018
Azure AD B2C An Introduction - DogFoodCon 2018
 
2015.04.23 Azure Mobile Services
2015.04.23 Azure Mobile Services2015.04.23 Azure Mobile Services
2015.04.23 Azure Mobile Services
 
Aplicaciones Xamarin conectadas y desconectadas con Azure
Aplicaciones Xamarin conectadas y desconectadas con AzureAplicaciones Xamarin conectadas y desconectadas con Azure
Aplicaciones Xamarin conectadas y desconectadas con Azure
 
Azure AD B2C Webinar Series: Custom Policies Part 2 Policy Walkthrough
Azure AD B2C Webinar Series: Custom Policies Part 2 Policy WalkthroughAzure AD B2C Webinar Series: Custom Policies Part 2 Policy Walkthrough
Azure AD B2C Webinar Series: Custom Policies Part 2 Policy Walkthrough
 
Firebase on Android: The Big Picture
Firebase on Android: The Big PictureFirebase on Android: The Big Picture
Firebase on Android: The Big Picture
 
Serverless iPaaS in Azure (IDU)
Serverless iPaaS in Azure (IDU)Serverless iPaaS in Azure (IDU)
Serverless iPaaS in Azure (IDU)
 
Microsoft Azure News - November 2021
Microsoft Azure News - November 2021Microsoft Azure News - November 2021
Microsoft Azure News - November 2021
 
Build apps
Build appsBuild apps
Build apps
 
Intelligent Cloud Conference: Azure AD B2C Application security made easy
Intelligent Cloud Conference: Azure AD B2C Application security made easyIntelligent Cloud Conference: Azure AD B2C Application security made easy
Intelligent Cloud Conference: Azure AD B2C Application security made easy
 
Azure AD B2C Webinar Series: Identity Protocols OIDC and OAuth2 part 2
Azure AD B2C Webinar Series: Identity Protocols OIDC and OAuth2 part 2Azure AD B2C Webinar Series: Identity Protocols OIDC and OAuth2 part 2
Azure AD B2C Webinar Series: Identity Protocols OIDC and OAuth2 part 2
 
APIs, APIs Everywhere!
APIs, APIs Everywhere!APIs, APIs Everywhere!
APIs, APIs Everywhere!
 
Serverless integrations using Azure Logic Apps (intro)
Serverless integrations using Azure Logic Apps (intro)Serverless integrations using Azure Logic Apps (intro)
Serverless integrations using Azure Logic Apps (intro)
 
Microsoft Azure IoT 手把手實作 @ K.NET by Maduka (2017-8-12)
Microsoft Azure IoT 手把手實作 @ K.NET by Maduka (2017-8-12)Microsoft Azure IoT 手把手實作 @ K.NET by Maduka (2017-8-12)
Microsoft Azure IoT 手把手實作 @ K.NET by Maduka (2017-8-12)
 

Destacado

Closer Look at Cloud Centric Architectures
Closer Look at Cloud Centric ArchitecturesCloser Look at Cloud Centric Architectures
Closer Look at Cloud Centric ArchitecturesTodd Kaplinger
 
7 Tips for Design Teams Collaborating Remotely
7 Tips for Design Teams Collaborating Remotely7 Tips for Design Teams Collaborating Remotely
7 Tips for Design Teams Collaborating RemotelyFramebench
 
Votre Entreprise sur Facebook... Pour quoi faire?
Votre Entreprise sur Facebook... Pour quoi faire?Votre Entreprise sur Facebook... Pour quoi faire?
Votre Entreprise sur Facebook... Pour quoi faire?Post Planner
 
анализ рынка приложений в социальных сетях
анализ рынка приложений в социальных сетях анализ рынка приложений в социальных сетях
анализ рынка приложений в социальных сетях Dmitriy Plekhanov
 
梯田上的音符 哈尼
梯田上的音符 哈尼梯田上的音符 哈尼
梯田上的音符 哈尼honan4108
 
The salvation army red kettle run
The salvation army red kettle runThe salvation army red kettle run
The salvation army red kettle runwilliam timperley
 
Experience Design + The Digital Agency (Phizzpop version)
Experience Design + The Digital Agency (Phizzpop version)Experience Design + The Digital Agency (Phizzpop version)
Experience Design + The Digital Agency (Phizzpop version)David Armano
 
Je Suis Charlie
Je Suis CharlieJe Suis Charlie
Je Suis Charlieguimera
 
Ivan chakarov-2015.eng-1
Ivan chakarov-2015.eng-1Ivan chakarov-2015.eng-1
Ivan chakarov-2015.eng-1Sim Aleksiev
 
九個月的紐西蘭
九個月的紐西蘭九個月的紐西蘭
九個月的紐西蘭honan4108
 
בריאות הציבור
בריאות הציבורבריאות הציבור
בריאות הציבורdannydoron
 
Xkr072015-myjurnal.ru
Xkr072015-myjurnal.ruXkr072015-myjurnal.ru
Xkr072015-myjurnal.ruVasya Pupkin
 
DigitalShoreditch: The gamification of customer service
DigitalShoreditch: The gamification of customer serviceDigitalShoreditch: The gamification of customer service
DigitalShoreditch: The gamification of customer serviceGuy Stephens | @guy1067
 
Первая помощь
Первая помощьПервая помощь
Первая помощьelasyschool
 
Letter to my great-grandfather on his 18th birthday
Letter to my great-grandfather on his 18th birthdayLetter to my great-grandfather on his 18th birthday
Letter to my great-grandfather on his 18th birthdayRoss Mayfield
 

Destacado (20)

Closer Look at Cloud Centric Architectures
Closer Look at Cloud Centric ArchitecturesCloser Look at Cloud Centric Architectures
Closer Look at Cloud Centric Architectures
 
7 Tips for Design Teams Collaborating Remotely
7 Tips for Design Teams Collaborating Remotely7 Tips for Design Teams Collaborating Remotely
7 Tips for Design Teams Collaborating Remotely
 
Votre Entreprise sur Facebook... Pour quoi faire?
Votre Entreprise sur Facebook... Pour quoi faire?Votre Entreprise sur Facebook... Pour quoi faire?
Votre Entreprise sur Facebook... Pour quoi faire?
 
анализ рынка приложений в социальных сетях
анализ рынка приложений в социальных сетях анализ рынка приложений в социальных сетях
анализ рынка приложений в социальных сетях
 
梯田上的音符 哈尼
梯田上的音符 哈尼梯田上的音符 哈尼
梯田上的音符 哈尼
 
Zaragoza turismo 237
Zaragoza turismo 237Zaragoza turismo 237
Zaragoza turismo 237
 
The salvation army red kettle run
The salvation army red kettle runThe salvation army red kettle run
The salvation army red kettle run
 
Experience Design + The Digital Agency (Phizzpop version)
Experience Design + The Digital Agency (Phizzpop version)Experience Design + The Digital Agency (Phizzpop version)
Experience Design + The Digital Agency (Phizzpop version)
 
Je Suis Charlie
Je Suis CharlieJe Suis Charlie
Je Suis Charlie
 
Ivan chakarov-2015.eng-1
Ivan chakarov-2015.eng-1Ivan chakarov-2015.eng-1
Ivan chakarov-2015.eng-1
 
Zaragoza turismo-60
Zaragoza turismo-60Zaragoza turismo-60
Zaragoza turismo-60
 
九個月的紐西蘭
九個月的紐西蘭九個月的紐西蘭
九個月的紐西蘭
 
בריאות הציבור
בריאות הציבורבריאות הציבור
בריאות הציבור
 
Zaragoza turismo 215
Zaragoza turismo 215Zaragoza turismo 215
Zaragoza turismo 215
 
Xkr072015-myjurnal.ru
Xkr072015-myjurnal.ruXkr072015-myjurnal.ru
Xkr072015-myjurnal.ru
 
quality control of food and drugs
quality control of food and drugsquality control of food and drugs
quality control of food and drugs
 
EPA DROE Email 6.30.03
EPA DROE Email 6.30.03EPA DROE Email 6.30.03
EPA DROE Email 6.30.03
 
DigitalShoreditch: The gamification of customer service
DigitalShoreditch: The gamification of customer serviceDigitalShoreditch: The gamification of customer service
DigitalShoreditch: The gamification of customer service
 
Первая помощь
Первая помощьПервая помощь
Первая помощь
 
Letter to my great-grandfather on his 18th birthday
Letter to my great-grandfather on his 18th birthdayLetter to my great-grandfather on his 18th birthday
Letter to my great-grandfather on his 18th birthday
 

Similar a Interconnect Mobile Application Development on Bluemix!!

Converting Your Mobile App to the Mobile Cloud
Converting Your Mobile App to the Mobile CloudConverting Your Mobile App to the Mobile Cloud
Converting Your Mobile App to the Mobile CloudRoger Brinkley
 
Windows Azure: Connecting the Dots for a Mobile Workforce
Windows Azure: Connecting the Dots for a Mobile WorkforceWindows Azure: Connecting the Dots for a Mobile Workforce
Windows Azure: Connecting the Dots for a Mobile WorkforceTechWell
 
SRV421 Deep Dive with AWS Mobile Services
SRV421 Deep Dive with AWS Mobile ServicesSRV421 Deep Dive with AWS Mobile Services
SRV421 Deep Dive with AWS Mobile ServicesAmazon Web Services
 
Simple stock market analysis
Simple stock market analysisSimple stock market analysis
Simple stock market analysislynneblue
 
Ibm xamarin gtruty
Ibm xamarin gtrutyIbm xamarin gtruty
Ibm xamarin gtrutyRon Favali
 
300 - Multiplatform Apps on Google Cloud Platform
300 - Multiplatform Apps on Google Cloud Platform300 - Multiplatform Apps on Google Cloud Platform
300 - Multiplatform Apps on Google Cloud PlatformMobileMonday Tel-Aviv
 
Connecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in BluemixConnecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in BluemixIBM
 
Iot 1906 - approaches for building applications with the IBM IoT cloud
Iot 1906 - approaches for building applications with the IBM IoT cloudIot 1906 - approaches for building applications with the IBM IoT cloud
Iot 1906 - approaches for building applications with the IBM IoT cloudPeterNiblett
 
AI-Powered Performance Monitoring for Integrations by Ricardo Torre
AI-Powered Performance Monitoring for Integrations by Ricardo TorreAI-Powered Performance Monitoring for Integrations by Ricardo Torre
AI-Powered Performance Monitoring for Integrations by Ricardo TorreAdam Walhout
 
Cloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with AzureCloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with AzureKen Cenerelli
 
Get started azure- Azure Mobile Services
Get started azure- Azure Mobile ServicesGet started azure- Azure Mobile Services
Get started azure- Azure Mobile ServicesSenthamil Selvan
 
Azure IoT suite - A look behind the curtain (Sam Vanhoutte @AZUG Event)
Azure IoT suite - A look behind the curtain (Sam Vanhoutte @AZUG Event)Azure IoT suite - A look behind the curtain (Sam Vanhoutte @AZUG Event)
Azure IoT suite - A look behind the curtain (Sam Vanhoutte @AZUG Event)Codit
 
Cnam cours azure zecloud mobile services
Cnam cours azure zecloud mobile servicesCnam cours azure zecloud mobile services
Cnam cours azure zecloud mobile servicesAymeric Weinbach
 
Building Your First App with MongoDB Stitch
Building Your First App with MongoDB StitchBuilding Your First App with MongoDB Stitch
Building Your First App with MongoDB StitchMongoDB
 
Azure Mobile Services
Azure Mobile ServicesAzure Mobile Services
Azure Mobile Servicesfatih demir
 
Cloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps  with AzureCloud Powered Mobile Apps  with Azure
Cloud Powered Mobile Apps with AzureKris Wagner
 
Faites évoluer votre accès aux données avec MongoDB Stitch
Faites évoluer votre accès aux données avec MongoDB StitchFaites évoluer votre accès aux données avec MongoDB Stitch
Faites évoluer votre accès aux données avec MongoDB StitchMongoDB
 
Colombo Mobile Developer MeetUp - Building Scalable Cloud Connected Mobile Ap...
Colombo Mobile Developer MeetUp - Building Scalable Cloud Connected Mobile Ap...Colombo Mobile Developer MeetUp - Building Scalable Cloud Connected Mobile Ap...
Colombo Mobile Developer MeetUp - Building Scalable Cloud Connected Mobile Ap...99X Technology
 
Cloud-enabling the Next Generation of Mobile Apps
Cloud-enabling the Next Generation of Mobile AppsCloud-enabling the Next Generation of Mobile Apps
Cloud-enabling the Next Generation of Mobile AppsNick Landry
 
Android chat in the cloud
Android chat in the cloudAndroid chat in the cloud
Android chat in the cloudfirenze-gtug
 

Similar a Interconnect Mobile Application Development on Bluemix!! (20)

Converting Your Mobile App to the Mobile Cloud
Converting Your Mobile App to the Mobile CloudConverting Your Mobile App to the Mobile Cloud
Converting Your Mobile App to the Mobile Cloud
 
Windows Azure: Connecting the Dots for a Mobile Workforce
Windows Azure: Connecting the Dots for a Mobile WorkforceWindows Azure: Connecting the Dots for a Mobile Workforce
Windows Azure: Connecting the Dots for a Mobile Workforce
 
SRV421 Deep Dive with AWS Mobile Services
SRV421 Deep Dive with AWS Mobile ServicesSRV421 Deep Dive with AWS Mobile Services
SRV421 Deep Dive with AWS Mobile Services
 
Simple stock market analysis
Simple stock market analysisSimple stock market analysis
Simple stock market analysis
 
Ibm xamarin gtruty
Ibm xamarin gtrutyIbm xamarin gtruty
Ibm xamarin gtruty
 
300 - Multiplatform Apps on Google Cloud Platform
300 - Multiplatform Apps on Google Cloud Platform300 - Multiplatform Apps on Google Cloud Platform
300 - Multiplatform Apps on Google Cloud Platform
 
Connecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in BluemixConnecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in Bluemix
 
Iot 1906 - approaches for building applications with the IBM IoT cloud
Iot 1906 - approaches for building applications with the IBM IoT cloudIot 1906 - approaches for building applications with the IBM IoT cloud
Iot 1906 - approaches for building applications with the IBM IoT cloud
 
AI-Powered Performance Monitoring for Integrations by Ricardo Torre
AI-Powered Performance Monitoring for Integrations by Ricardo TorreAI-Powered Performance Monitoring for Integrations by Ricardo Torre
AI-Powered Performance Monitoring for Integrations by Ricardo Torre
 
Cloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with AzureCloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with Azure
 
Get started azure- Azure Mobile Services
Get started azure- Azure Mobile ServicesGet started azure- Azure Mobile Services
Get started azure- Azure Mobile Services
 
Azure IoT suite - A look behind the curtain (Sam Vanhoutte @AZUG Event)
Azure IoT suite - A look behind the curtain (Sam Vanhoutte @AZUG Event)Azure IoT suite - A look behind the curtain (Sam Vanhoutte @AZUG Event)
Azure IoT suite - A look behind the curtain (Sam Vanhoutte @AZUG Event)
 
Cnam cours azure zecloud mobile services
Cnam cours azure zecloud mobile servicesCnam cours azure zecloud mobile services
Cnam cours azure zecloud mobile services
 
Building Your First App with MongoDB Stitch
Building Your First App with MongoDB StitchBuilding Your First App with MongoDB Stitch
Building Your First App with MongoDB Stitch
 
Azure Mobile Services
Azure Mobile ServicesAzure Mobile Services
Azure Mobile Services
 
Cloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps  with AzureCloud Powered Mobile Apps  with Azure
Cloud Powered Mobile Apps with Azure
 
Faites évoluer votre accès aux données avec MongoDB Stitch
Faites évoluer votre accès aux données avec MongoDB StitchFaites évoluer votre accès aux données avec MongoDB Stitch
Faites évoluer votre accès aux données avec MongoDB Stitch
 
Colombo Mobile Developer MeetUp - Building Scalable Cloud Connected Mobile Ap...
Colombo Mobile Developer MeetUp - Building Scalable Cloud Connected Mobile Ap...Colombo Mobile Developer MeetUp - Building Scalable Cloud Connected Mobile Ap...
Colombo Mobile Developer MeetUp - Building Scalable Cloud Connected Mobile Ap...
 
Cloud-enabling the Next Generation of Mobile Apps
Cloud-enabling the Next Generation of Mobile AppsCloud-enabling the Next Generation of Mobile Apps
Cloud-enabling the Next Generation of Mobile Apps
 
Android chat in the cloud
Android chat in the cloudAndroid chat in the cloud
Android chat in the cloud
 

Último

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 

Último (20)

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 

Interconnect Mobile Application Development on Bluemix!!

  • 1. Accelerating Mobile Application Development with Mobile Cloud Services Todd Kaplinger Senior Technical Staff Member
 MobileFirst for iOS Cloud Architect @todkap © 2015 IBM Corporation
  • 2. The new normal of IT focus and investment… Three methods of new value creation: Alone, each of these has immense potential. Integrated, they change everything. Drive people-centric Engagement for new profit channels Utilize Data as the new basis of competitive advantage Leverage Cloud as growth engine for business
  • 3. Building “engaging” apps is hard • Time to market requirements must be quicker… weeks not months • More experimental in nature… LEAN approaches to testing the market are needed. • Mobile brings its own set of challenges… from device fragmentation to scale to surges of demand to connecting securely into enterprise data • Greater data capture requirements… on all apps to drive analytics • Developers of engaging apps want to use multiple languages and Cloud APIs…
  • 4. The IBM MobileFirst Platform contains the ingredients for a successful mobile program Available on premises or in the cloud. Efficiently Develop & Integrate Easily Secure Personalize Engagements Continuously Deliver
  • 5. The three essential ingredients to building apps for the “new normal” A platform to secure your apps, manage their lifecycle, and integrate them into the enterprise Cloud APIs that can be glued together to quickly create new apps at scale Synchronized data across devices that can scale to meet mobile demand
  • 7. Swift + iOS8 Simple TODO Application
  • 8. BlueList Application • Bluemix Hosted • Leverages MobileFirst Services Starter Boilerplate • Cloudant NoSQL DB • Push for iOS 8 • Advanced Mobile Access • Linked identity to data stored in cloud Bluemix Google+ Identity Custom Authentication Facebook Authentication
  • 9. BlueList Application • Simple TODO list for tracking outstanding items • Focus on Swift version designed for iOS8 • CocoaPods used for dependency management • Available on command line via GIT DevOps CocoaPods GIT Hosted on DevOps
  • 10. BlueList in Swift Variant of BlueList Mobile Data written in Swift Simple TODO list for tracking outstanding items (IBM_Item.swift Class)
 (2 ViewControllers / One AppDelegate / One Storyboard) Leverages Bolts Framework to simplify data access patterns 10 https://github.com/BoltsFramework/Bolts-iOS Data CRUD BlueList Storyboard
  • 11. DEMO
  • 12. Acme Apparel Application • Business to Consumer (B2C) • Advanced Application • 15 Unique Views • 10 Persisted Data Objects • Security Integration with Mobile First Platform Advanced Mobile Access • Push Notifications Support • Integration with 3rd Party Weather Service • MQA sentiment analysis and crash reporting • Operational Analytics calculating usage patterns Google+ Identity
  • 13. Advanced Mobile Access • MobileFirst Services Starter (for iOS 8) • Authentication options • Facebook • Google+ • Custom authentication • Register iOS app using bundle id and version • Custom authentication set up through predefined REST API • Use Apple Touch ID to secure MobileFirst access tokens
  • 14. Social Integration • Google+ Authentication • OAUTH2 Client Side Flow • Native iOS Libraries with Objective-C • Authentication Scope • Profile • Access to user profile info (email/preferred name/ photo) • Integrated with Advanced Mobile Access /** * Executed when the Google+ authentication flow returns control to the application. */ - (void)finishedWithAuth: (GTMOAuth2Authentication *)auth error: (NSError *) error { if(!error){ [self queryGooglePlusUser]; } } /** * Fetch the authenticated user's Google+ information. */ -(void) queryGooglePlusUser { GTLServicePlus* plusService = [[GTLServicePlus alloc] init]; plusService.retryEnabled = YES; [plusService setAuthorizer:[GPPSignIn sharedInstance].authentication]; GTLQueryPlus *query = [GTLQueryPlus queryForPeopleGetWithUserId:@"me"]; [plusService executeQuery:query completionHandler:^(GTLServiceTicket *ticket, GTLPlusPerson *person, NSError *error) { if (error) { GTMLoggerError(@"Error: %@", error); } else { [self buildCustomer:(person)]; } }]; }
  • 15. Cloudant NoSQL Database • Fully managed Cloudant NoSQL database provides data layer that is transparent and always on • Client-side APIs provide intuitive environment for storing data on the cloud • CRUD support, online and offline replication with only a few lines of code • Map simple objects to JSON documents using default or custom object mapper • Object Models - Items, Shopping Cart, Stores, and Purchase History Shopping Cart /*! * Handles the logic for adding an item to the cart. */ -(void) addToCart:(Item *)itemToAdd withColor:(ColorObject*)color andSize:(NSString*)size andItemURL:(NSString*)url { self.totalItems++; NSString *itemKey = [self generateKey:itemToAdd withColor:color.colorName andSize:size]; self.total = [self.total decimalNumberByAdding:itemToAdd.price]]; if ([self.itemsInCart keyExists:itemKey]) { CartItem *cartItem = (CartItem*)[self.itemsInCart objectForKey:itemKey]; cartItem.quantity++; return; } CartItem *newItem = [[CartItem alloc] initWithItem:itemToAdd andSize:size andColor:color andCartKey:itemKey andItemURL:url]; [self.itemsInCart addObject:newItem forKey:itemKey]; } /*! * Handles the logic for deleting an item from the cart. */ -(void)deleteFromCart:(NSInteger)itemIndex { CartItem *itemToDelete = [self.itemsInCart objectAtIndex:itemIndex]; self.totalItems = self.totalItems - itemToDelete.quantity; NSDecimalNumber *totalToDelete = [itemToDelete.item.price decimalNumberByMultiplyingBy:itemToDelete.quantity]; self.total = [self.total decimalNumberBySubtracting:totalToDelete]; [self.itemsInCart removeObjectForKey:itemToDelete.cartKey]; }
  • 16. Push Notification Integration • Customer subscribes to notifications on order updates after logging in • Visual notifications • Alerts appear to inform employee of a new purchase - (void) application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken{ NSArray *tag = [NSArray arrayWithObjects:@"customerTag", nil]; IMFPushClient *pushService = [IMFPushClient sharedInstance]; pushService.environment = @"sandbox"; [pushService registerDeviceToken:deviceToken completionHandler: ^(IMFResponse *response, NSError *error) { if (nil != error){ NSLog(@"Error register device token with error: %@", error); } else { NSLog(@"Device has been registered with response: %@", response); [pushService subscribeToTags:tag completionHandler: ^(IMFResponse *response, NSError *error) { NSLog(@"Subscribed to tag with response: %@", response); }]; } }]; } - (void)application:(UIApplication *)application didReceiveRemoteNotification: (NSDictionary *)userInfo { NSString *message = [[[userInfo valueForKey:@"aps"] valueForKey:@"alert"] valueForKey:@"body"]; [UIApplication sharedApplication].applicationIconBadgeNumber = [[[userInfo objectForKey:@"aps"] objectForKey:@"badgecount"] intValue]; [self showNotification:message]; if ([[[userInfo valueForKey:@"aps"] valueForKey:@"category"] isEqualToString:@"PURCHASE_CHANGE"]){ if (application.applicationState == UIApplicationStateActive){ [[self notificationCenter] postNotificationName:@"Purchase_Change" object:nil userInfo:userInfo]; [[PushService pushInstance] resetPushCounter]; } else if (application.applicationState == UIApplicationStateBackground || application.applicationState == UIApplicationStateInactive){ [[self notificationCenter] postNotificationName:@"Purchase_Change" object:nil userInfo:userInfo]; [[PushService pushInstance] resetPushCounter]; } } } • Notifies a customer if the status of her/his order has changed • Data channel • Customers’ purchase statuses are updated when the view is reloaded • Full support for interactive notifications in iOS 8 • Uses tags and subscriptions to send targeted messages to customers
  • 17. Location • Device level APIs for obtaining user’s current location • APIs map store locations in close proximity to the user • User can denote preferred store location and obtain directions.
  • 18. Weather Service • Server side integration logic written in Node.js • APIs get current weather for store locations using 3rd party weather service
  • 19. Mobile Quality Assurance • Admin dashboard on Bluemix • Pre-production or production SDKs • Capture device metrics with every bug report • Analyze errors by build, device, etc. MQA Dashboard AcmeApparel AcmeApparel
  • 20. Mobile Analytics • Operational Analytics catered to the mobile app developer • Request metrics are automatically captured for the various Mobile Cloud Services • Capture mobile OS levels • Analyze errors by build, device, etc. Data Analytics Push Analytics Security Analytics
  • 21. DEMO
  • 22. Thank You! Todd Kaplinger @todkap © 2015 IBM Corporation