From the SMX West Conference in San Jose, California, March 1-3, 2016. SESSION: What You Need To Know About Apple iOS App Search & Universal Links. PRESENTATION: How to Optimize Apps for Apple iOS Search and iOS 9 Universal Links - Given by Emily Grossman, @goutaste - MobileMoxie, Mobile Marketing Specialist. #SMX #32A
Android Application Components with Implementation & Examples
How to Optimize Apps for Apple iOS Search and iOS 9 Universal Links By Emily Grossman
1. #SMX #32A @goutaste
What You Need To Know About Apple iOS App Search & Universal Links
How To
Optimize Apps
for Apple iOS
Search & iOS 9
Universal Links
7. #SMX #32A @goutaste
“Apple’s
App
Store
commission
is
now
at
a
run-‐rate
of
$9
billion,
more
than
its
total
revenue
in
the
year
the
iPod
launched.”
-‐
Benedict
Evans,
@BenedictEvans
-‐
13. #SMX #32A @goutaste
Source:
https://dev.branch.io/recipes/branch_universal_links/ios/#which-‐appsbrowsers-‐support-‐universal-‐links
Universal
Links
Are
Not
100%
“Universal”
Yet
“Conditionally”
means
issues
like…
• Will
NOT
work
when
pasted
into
URL
field
• Will
work
with
a
<a
href=“..”>
click
across
domains
(ie
Google
à
IMDB)
• Will
NOT
work
with
a
<a
href=“…”>
on
the
same
domain
(ie
IMDB
à
IMDB)
14. #SMX #32A @goutaste
Google
App
Indexing
for
iOS
Apps
Requires
Universal
Links
Source:
bit.ly/GoogleAppIndexing-‐iOS
17. #SMX #32A @goutaste
1
• Modify
your
application
delegate
• Adopt
an
entitlement
in
Xcode
that
lists
each
domain
associated
with
your
app
READ:
http://bit.ly/ios9universallinks
http://bit.ly/UIApplicationDelegate-‐
Reference
WATCH:
http://bit.ly/appleuniversallinks
Prepare
App
18. #SMX #32A @goutaste
{
"applinks": {
"apps": [],
"details": {
»ABC0123.com.domain.App": {
"paths":[ "*" ]
}
}
}
}
Create
an
apple-app-site-
association file
for
each
associated
domain
with
the
content
your
app
supports
and
host
it
at
the
root
level.
NOTE:
The
association
file
must
be
hosted
on
a
domain
that
supports
HTTPS/TLS,
even
if
the
HTTP
deep
links
are
not
themselves
served
via
HTTPS.
2
Associate
App
With
Website
19. #SMX #32A @goutaste
{
"applinks": {
"apps": [],
"details": {
»ABC0123.com.domain.App": {
"paths":[
”/folder/subfolder/”,
”/folder2/subfolder2/*”,
]
}
}
}
}
Modify
apple-app-site-
association file
to
specify
only
the
content
that
is
parallel
between
the
app
and
the
website.
3
Control
Paths
23. #SMX #32A @goutaste
Core
Spotlight
NSUserActivity
Web
Markup
Used
for…
Indexing
public
app
screens
that
mirror
content
on
the
web
DOES
require
corresponding
web
content
Add
code
to
WEB
Public
Cloud
Index
Used
for…
Indexing
app
screens
that
contain
private/
personal
data
Does
NOT
require
corresponding
web
content
Add
code
to
APP
Private
Device
Index
Used
for…
Indexing
private
and
public
navigation
points
in
the
app
Does
NOT
require
corresponding
web
content
Add
code
to
APP
Private
Device
Index
and/
or
Public
Cloud
Index
Private
Public
24. #SMX #32A @goutaste
TYPE
OF
SCREEN
API
TO
USE
Content
that
the
user
views
NSUserActivity
Frequently
used
navigation
points
and
features
NSUserActivity
Content
created
or
curated
by
the
user,
such
as
photos
or
a
list
of
favorites
Core
Spotlight
New
messages,
content,
or
items
that
arrive
on
the
device
Core
Spotlight
Content
that
lives
in
both
your
app
and
your
website
Web
Markup
33. #SMX #32A @goutaste
Private
or
Public
Public
Only
Search
results
meta
data
for
display
and
rankings
‘Canonical’
More
info
here:
bit.ly/NSUserActivity
NSUserActivity
34. #SMX #32A @goutaste
CoreSpotlight
NSUserActivity
Web
Markup
NSUserActivity
var
eligibleForSearch
var
eligibleForPublicIndexing
Private/
Device
Index
Public/
Cloud
Index
PRIVATE
APP
SCREEN
PUBLIC
APP
SCREEN