emily grossman app indexing smx west 2017
TRANSCRIPT
Presentation Title
Emily Grossman, Director of App Strategy at MobileMoxieWhat's New With Google Firebase App Indexing
#SMX #23A2@goutasteUse Impact Visuals Above, Move Presentation Title As NeededTITLE SLIDE ALTERNATIVE LAYOUT w/ *EXAMPLE* IMAGE (SWAP IN YOUR OWN AS NEEDED)
App Indexing Promised Benefits
#SMX #23A2@goutastePersonal ContentAutocompleteInstall ButtonsRankings BoostDeep Links to App ContentRich SearchResults (icons+)Personal & private content can be indexed in Android On-Device SearchAndroid deep links appear in Autocomplete In Google app based on engagement signalsInstall buttons can appear on web results when app is not installed; improve acquisitionApp & Webpage rank as a pair; Pair gets rankings boost for implementing & for APISearch Results link to app instead of website (when installed)Search Results get app icon; increase CTRHow App Indexing Is Supposed to Benefit Publishers
#SMX #23A2@goutastePersonal ContentAutocompleteInstall ButtonsRankings BoostDeep Links to App ContentRich SearchResults (icons+)Personal & private content can be indexed in Android On-Device SearchAndroid deep links appear in Autocomplete In Google app based on engagement signalsInstall buttons can appear on web results when app is not installed; improve acquisitionApp & Webpage rank as a pair; Pair gets rankings boost for implementing & for APISearch Results link to app instead of website (when installed)Search Results get app icon; increase CTRWhich Benefits Have Changed
ANDROID ONLY
#SMX #23A2@goutastePersonal ContentAutocompleteInstall ButtonsRankings BoostDeep Links to App ContentRich SearchResults (icons+)Personal & private content can be indexed in Android On-Device SearchAndroid deep links appear in Autocomplete In Google app based on engagement signalsInstall buttons can appear on web results when app is not installed; improve acquisitionApp & Webpage rank as a pair; Pair gets rankings boost for implementing & for APISearch Results link to app instead of website (when installed)Search Results get app icon; increase CTRWhich Benefits Have Changed
VOID IF AMP ON SAME URLANDROID ONLY
#SMX #23A2@goutastePersonal ContentAutocompleteInstall ButtonsRankings BoostDeep Links to App ContentRich SearchResults (icons+)Personal & private content can be indexed in Android On-Device SearchAndroid deep links appear in Autocomplete In Google app based on engagement signalsInstall buttons can appear on web results when app is not installed; improve acquisitionApp & Webpage rank as a pair; Pair gets rankings boost for implementing & for APISearch Results link to app instead of website (when installed)Search Results get app icon; increase CTRWhich Benefits Have Changed
ANDROID ONLY (?)VOID IF AMP ON SAME URLANDROID ONLY
#SMX #23A2@goutastePersonal ContentAutocompleteInstall ButtonsRankings BoostDeep Links to App ContentRich SearchResults (icons+)Personal & private content can be indexed in Android On-Device SearchAndroid deep links appear in Autocomplete In Google app based on engagement signalsInstall buttons can appear on web results when app is not installed; improve acquisitionApp & Webpage rank as a pair; Pair gets rankings boost for implementing & for APISearch Results link to app instead of website (when installed)Search Results get app icon; increase CTRWhich Benefits Have Changed
ONLY ON HOME SCREEN/ PAGEANDROID ONLY (?)VOID IF AMP ON SAME URLANDROID ONLY
#SMX #23A2@goutastePersonal ContentAutocompleteInstall ButtonsRankings BoostDeep Links to App ContentRich SearchResults (icons+)Personal & private content can be indexed in Android On-Device SearchAndroid deep links appear in Autocomplete In Google app based on engagement signalsInstall buttons can appear on web results when app is not installed; improve acquisitionApp & Webpage rank as a pair; Pair gets rankings boost for implementing & for APISearch Results link to app instead of website (when installed)Search Results get app icon; increase CTRWhich Benefits Have Changed
NO CHANGEONLY ON HOME SCREEN/ PAGEANDROID ONLY (?)VOID IF AMP ON SAME URLANDROID ONLY
#SMX #23A2@goutastePersonal ContentAutocompleteInstall ButtonsRankings BoostDeep Links to App ContentRich SearchResults (icons+)Personal & private content can be indexed in Android On-Device SearchAndroid deep links appear in Autocomplete In Google app based on engagement signalsInstall buttons can appear on web results when app is not installed; improve acquisitionApp & Webpage rank as a pair; Pair gets rankings boost for implementing & for APISearch Results link to app instead of website (when installed)Search Results get app icon; increase CTRWhich Benefits Have Changed
OUT OF BETA (YAY!)NO CHANGEONLY ON HOME SCREEN/ PAGEANDROID ONLY (?)VOID IF AMP ON SAME URLANDROID ONLY
#SMX #23A2@goutasteOn the Horizon: Android Instant Apps
Run Android Apps without installation
Currently in limited release
Built off the same deep linking framework as App Indexing
#SMX #23A2@goutastehttp://www.pagelizard.com/android-instant-apps-publishers/9
Use Impact Visuals Above, Move Presentation Title As NeededTITLE SLIDE ALTERNATIVE LAYOUT w/ *EXAMPLE* IMAGE (SWAP IN YOUR OWN AS NEEDED)
App Indexing ImplementationChanges
#SMX #23A2@goutasteApp Indexing Process Until Fall of 2016Support HTTP URLs(HTTP URLs + Digital Asset Links File)App Indexing APITest & Report(Many Tools + Search Console)Support Universal Links(HTTP URLs + App Site Association File)App Indexing PodTest (New Tool! But no Search Console)ANDROIDiOS
#SMX #23A2@goutasteApp Indexing Process After Fall of 2016Support HTTP URLs(HTTP URLs + Digital Asset Links File)App Indexing APITest & Report(Many Tools + Search Console)Support Universal Links(HTTP URLs + App Site Association File)App Indexing PodTest (New Tool! But no Search Console)
Migrate To new API Version 10 or higherAdd Personal/zed & private ContentISSUES!!!Not supported = no icons
This still exists but is kinda irrelevantANDROIDiOS
#SMX #23A2@goutasteUse Impact Visuals Above, Move Presentation Title As NeededTITLE SLIDE ALTERNATIVE LAYOUT w/ *EXAMPLE* IMAGE (SWAP IN YOUR OWN AS NEEDED)
Step-By-Step
#SMX #23A2@goutasteApp Indexing Process After Fall of 2016Support HTTP URLs(HTTP URLs + Digital Asset Links File)App Indexing APITest & Report(Many Tools + Search Console)Support Universal Links(HTTP URLs + App Site Association File)App Indexing PodTest (New Tool! But no Search Console)
Migrate To new API Version 10 or higherAdd Personal/zed & private ContentISSUES!!!Not supported = no icons
This still exists but is kinda irrelevantANDROIDiOS
#SMX #23A2@goutasteUse Impact Visuals Above, Move Presentation Title As NeededTITLE SLIDE ALTERNATIVE LAYOUT w/ *EXAMPLE* IMAGE (SWAP IN YOUR OWN AS NEEDED)
Android HTTP URLs
#SMX #23A2@goutasteSupport HTTP URLs (Add & Handle Intent Filers)
You think this is easy but consider...
Does everything in this folder have app content? Does your app content match your web content? What happens if you retire content in the app but not the web? Have you considered https URLs?
https://firebase.google.com/docs/app-indexing/android/public-content
#SMX #23A2@goutasteAndroid Manifest Horror Stories
Your developer might also just duck up the implementation
#SMX #23A2@goutasteAdd Digital Asset Links File To Web"relation": ["delegate_permission/common.handle_all_urls"], "target": { "namespace": "web", "site": "https://host.sampleapp.com"},{ "relation": ["delegate_permission/common.handle_all_urls"], "target": { "namespace": "android_app", "package_name": com.host.sampleapp", "sha256_cert_fingerprints": ["10:39:38:EE:45:37:E5:9E:8E:E7:92:F6:54:50:4F:B8:34:6F:C6:B3:46:D0:BB:C4:41:5F:C3:39:FC:FC:8E:C1"] }}]https://developer.android.com/training/app-links/index.htmlHost this file at: https://domain.well-known/assetlinks.json
#SMX #23A2@goutaste
Noindex.xml
Reference it in the Manifest:https://firebase.google.com/docs/app-indexing/android/public-content
#SMX #23A2@goutasteUse Impact Visuals Above, Move Presentation Title As NeededTITLE SLIDE ALTERNATIVE LAYOUT w/ *EXAMPLE* IMAGE (SWAP IN YOUR OWN AS NEEDED)
iOS Universal Links
#SMX #23A2@goutasteTo support universal links in your app, take the following steps:Add an entitlement that specifies the domains your app supports. Update your app delegate to respond appropriately when it receives the NSUserActivity object.Support Universal Links In-Apphttps://developer.apple.com/library/content/documentation/General/Conceptual/AppSearch/UniversalLinks.html
#SMX #23A2@goutasteAdd Apple App Site Association File"applinks": { "apps": [], "details": [ { "appID": SAMPLE-APP.com.host.location","paths": [ "/news/story/", NOT /news/video/2010", "/news/video/201?/*"] }, { "appID": DIFFERENT-APP.com.host.location", "paths": [ "*" ] } ] }}
Host this file at: https://domain.well-known/apple-app-site-association
OR
https://domain/apple-app-site-association
#SMX #23A2@goutasteApp Indexing Process After Fall of 2016Support HTTP URLs(HTTP URLs + Digital Asset Links File)App Indexing APITest & Report(Many Tools + Search Console)Support Universal Links(HTTP URLs + App Site Association File)App Indexing PodTest (New Tool! But no Search Console)
Migrate To new API Version 10 or higherAdd Personal/zed & private ContentISSUES!!!Not supported = no icons
This still exists but is kinda irrelevantANDROIDiOS
#SMX #23A2@goutasteUse Impact Visuals Above, Move Presentation Title As NeededTITLE SLIDE ALTERNATIVE LAYOUT w/ *EXAMPLE* IMAGE (SWAP IN YOUR OWN AS NEEDED)
Android App Indexing API
#SMX #23A2@goutasteNEW: Index Personal Content
API
#SMX #23A2@goutasteHow to Support Personalized Content In-Apppublic class AppIndexingService extends IntentService {
public AppIndexingService() { super("AppIndexingService"); }
@Override protected void onHandleIntent(Intent intent) { ArrayList indexableNotes = new ArrayList();
for (Recipe recipe : getAllRecipes()) { Note note = recipe.getNote(); if (note != null) { Indexable noteToIndex = Indexables.noteDigitalDocumentBuilder() .setName(recipe.getTitle() + " Note") .setText(note.getText()) .setUrl(recipe.getNoteUrl()) .build(); ...Identify and group indexable content (https://firebase.google.com/docs/app-indexing/android/personal-content)
#SMX #23A2@goutasteHow to Support Personalized Content In-App Add the AppIndexingService and an tag to the manifesthttps://firebase.google.com/docs/app-indexing/android/personal-content
#SMX #23A2@goutaste
27
App Indexing API for Android (Migrate to the New API)// Before import com.google.android.gms.appindexing.Action; import com.google.android.gms.appindexing.AppIndex; import com.google.android.gms.common.api.GoogleApiClient;
// After import com.google.firebase.appindexing.Action; import com.google.firebase.appindexing.FirebaseUserActions; import com.google.firebase.appindexing.Indexable; import com.google.firebase.appindexing.builders.Actions; Upgrade to API version 10.0 or higherhttps://firebase.google.com/docs/app-indexing/android/migrate
#SMX #23A2@goutastehttps://firebase.google.com/docs/app-indexing/android/migrate28
Use API for Both Private & Public Content
@Overridepublic void onStart() { super.onStart();
FirebaseUserActions.getInstance().start(getRecipeViewAction()); }
@Overridepublic void onStop() { FirebaseUserActions.getInstance().end(getRecipeViewAction()); super.onStop(); }https://firebase.google.com/docs/app-indexing/android/log-actionsThis drives autocomplete App Indexing & gives Google Engagement Data (ooooh)
This example is for public indexing
#SMX #23A2@goutastehttps://firebase.google.com/docs/app-indexing/android/migrate29
Use Impact Visuals Above, Move Presentation Title As NeededTITLE SLIDE ALTERNATIVE LAYOUT w/ *EXAMPLE* IMAGE (SWAP IN YOUR OWN AS NEEDED)
iOS App Indexing2015 - 2016
#SMX #23A2@goutaste
References to the App Indexing Cocoapod Have Been Removed from Documentation
#SMX #23A2@goutasteGoogle Recommends Removing iOS App Indexing Podeffectively ends the indexing part of iOS app indexingDue to recent changes in Apples App Store Review Guidelines,iOS apps that use the App Indexing SDK feature might not be accepted by the App Store. Apps that implement iOS Universal Links without using App Indexing SDK features will not be affected.The detailsFirebase's App Indexing feature on iOS uses SafariViewController to help display and promote your app results on Google Search.Apples new guidelines now limit the use of SafariViewController making it challenging for us to continue offering this functionality. This change also means that we will no longer be able to provide Search Console analytics for your iOS app.
What you need to doTo ensure that your app will continue to be accepted by the App Store, we recommend that you remove references to Firebase App Indexing pod by removing these lines of code:In your Podfile:pod Firebase/AppIndexingorpod 'GoogleAppIndexingIn your AppDelegate class:@import Firebaseor@import In your application:didFinishLaunchingWithOptions: method:[[FIRAppIndexing sharedInstance] registerApp:];or[[GSDAppIndexing sharedInstance] registerApp:];
Make sure to maintain your iOS Universal Links implementation as this will continue to bring users directly into your app from Google Search.
#SMX #23A2@goutaste
JULYNOViOS Deep Links No Longer Show App Icon in Search Results
Only the web URL is indexed.
Because Universal Links work of the web URL, Universal Links still work from:SafariChrome (iOS)
#SMX #23A2@goutasteApp Indexing Process After Fall of 2016Support HTTP URLs(HTTP URLs + Digital Asset Links File)Test & Report(Many Tools + Search Console)Support Universal Links(HTTP URLs + App Site Association File)Test (New Tool! But no Search Console)
ISSUES!!!
This still exists but is kinda irrelevantANDROIDiOS
App Indexing APIApp Indexing Pod
Migrate To new API Version 10 or higherAdd Personal/zed & private ContentNot supported = no icons
#SMX #23A2@goutaste
Android App Indexing Testing
#SMX #23A2@goutasteTest HTTP Deep Links on Android Device with QR Code
(you can also used this to check on your competitors)
https://firebase.google.com/docs/app-indexing/android/test
#SMX #23A2@goutasteSee if Android Deep Links Are Indexed & Preview Search Result
(you can also use this to check out your competitors)
https://firebase.google.com/docs/app-indexing/android/test
#SMX #23A2@goutasteUse Impact Visuals Above, Move Presentation Title As NeededTITLE SLIDE ALTERNATIVE LAYOUT w/ *EXAMPLE* IMAGE (SWAP IN YOUR OWN AS NEEDED)
iOS App IndexingTesting2015 - 2016
#SMX #23A2@goutaste
The Android Tool exists for iOS as well but
#SMX #23A2@goutastehttps://firebase.google.com/docs/app-indexing/ios/test39
The Android Tool exists for iOS as well but
The simulator is not very helpful.
#SMX #23A2@goutaste
The Android Tool exists for iOS as well but
The simulator is not very helpful.
Thanks for simulating normal web results, Googs.
#SMX #23A2@goutaste
For Universal Links, Try This:https://search.developer.apple.com/appsearch-validation-tool
#SMX #23A2@goutaste
For Universal Links, Try This:
https://search.developer.apple.com/appsearch-validation-tool
#SMX #23A2@goutaste
Search Console: Android Crawl Status & Error Reporting Issues
#SMX #23A2@goutaste
#SMX #23A2@goutaste
People started to notice a huge uptick in Crawl Errors starting around 2/3 Shameless plug for Barrys article:https://www.seroundtable.com/google-search-console-crawl-status-errors-apps-update-23406.html
#SMX #23A2@goutaste
And no, it wasnt just Barry
#SMX #23A2@goutaste
App Indexing Team is Working On It
#SMX #23A2@goutaste
New Toys!Search Referrals For Analytics Integration
#SMX #23A2@goutaste
So now you can see your Google Search referral behavior in your analytics platform of choice!
#SMX #23A2@goutasteUse Impact Visuals Above, Move Presentation Title As NeededTITLE SLIDE ALTERNATIVE LAYOUT w/ *EXAMPLE* IMAGE (SWAP IN YOUR OWN AS NEEDED)
App Indexing Webmaster Support Forums? - 2017
#SMX #23A2@goutaste
#SMX #23A2@goutaste
You Get 5 Support Questions Use Them Wisely
https://firebase.google.com/support/
#SMX #23A2@goutaste
I Saved You This One Youre Welcome
#SMX #23A2@goutasteUse Impact Visuals Above, Move Presentation Title As NeededTITLE SLIDE ALTERNATIVE LAYOUT w/ *EXAMPLE* IMAGE (SWAP IN YOUR OWN AS NEEDED)
Android Instant Apps
#SMX #23A2@goutaste
Android Instant Apps
Upcoming Requirements:
Reduce size of APKSupport Digital Asset LinksModularize your app (4MB chunks)Implement Runtime PermissionsSupport SmartLock
#SMX #23A2@goutastehttp://www.pagelizard.com/android-instant-apps-publishers/56
LEARN MORE: UPCOMING @SMX EVENTSTHANK YOU! SEE YOU AT THE NEXT #SMX
#SMX #23A2@goutaste