W aplikacjach mobilnych precyzyjne linki umożliwiają użytkownikom przechodzenie bezpośrednio do treści w aplikacji. Bez precyzyjnych linków, jeśli chcesz udostępnić znajomemu koszulkę znalezioną w aplikacji sklepu, link, który mu wyślesz, przekieruje go albo do przeglądarki, albo do Sklepu Play, gdzie będzie musiał zainstalować lub otworzyć aplikację, a potem wyszukać daną koszulkę. Żadna z tych sytuacji nie sprzyja wygodzie użytkowników. Dzięki precyzyjnym linkom Twój znajomy zostanie przekierowany do konkretnej koszulki, którą znalazłeś w aplikacji sklepu.
Z tego dokumentu dowiesz się, jak używać precyzyjnych linków do tworzenia bogatych i ciekawych doświadczeń dla użytkowników RBM.
Przenoszenie użytkownika RBM do aplikacji
Precyzyjny link to tylko link do aplikacji. Twój agent RBM może otworzyć aplikację zainstalowaną na czyimś telefonie, używając akcji OpenUrlAction, w której adres URL jest precyzyjnym linkiem skonfigurowanym dla aplikacji, którą chcesz wywołać. Więcej informacji znajdziesz w artykule Tworzenie precyzyjnych linków do treści aplikacji.
Zobacz poniższy przykład. Aby otworzyć podcast Google Cloud w aplikacji Podcasty Google, możesz utworzyć działanie OpenUrlAction z adresem URI:
https://www.google.com/podcasts?feed=aHR0cDovL2ZlZWRzLmZlZWRidXJuZXIuY29tL0dvb2dsZUNsb3VkUGxhdGZvcm1Qb2RjYXN0
Wiele usług Google jest skonfigurowanych tak, aby obsługiwać linki bezpośrednie, które działają też jako adresy URL, np. YouTube i Mapy Google.
Aby wywołać dowolną z tych aplikacji z poziomu agenta, musimy podać tę wartość jako adres URL w działaniu OpenUrlAction. W tym przykładowym kodzie JSON określono bogatą kartę RBM z 3 działaniami otwierania adresu URL, z których każde prowadzi do innej aplikacji.
{
"contentMessage":{
"richCard":{
"standaloneCard":{
"cardOrientation":"VERTICAL",
"cardContent":{
"title":"Did you know that you can open apps from an RBM agent?",
"description":"",
"suggestions":[
{
"action":{
"text":"Google Cloud Podcast",
"postbackData":"podcast_tap",
"openUrlAction":{
"url":"https://www.google.com/podcasts?feed=aHR0cDovL2ZlZWRzLmZlZWRidXJuZXIuY29tL1JvYkNlc3Rlcm5pbm8&nord=0"
}
}
},
{
"action":{
"text":"YouTube Video",
"postbackData":"youtube_tap",
"openUrlAction":{
"url":"https://www.youtube.com/embed/xSE9Qk9wkig"
}
}
},
{
"action":{
"text":"Google Maps",
"postbackData":"maps_tap",
"openUrlAction":{
"url":"https://goo.gl/maps/ToMSdr4PYX62"
}
}
}
]
}
}
}
}
}
Gdy ten ładunek JSON jest renderowany w kliencie RCS użytkownika, ikona sugerowanej czynności pasuje do aplikacji z precyzyjnym linkiem. Kliknięcie dowolnej z sugerowanych czynności powoduje uruchomienie odpowiedniej aplikacji bezpośrednio w treści zakodowanej w adresie URL.
Dlaczego chcesz to zrobić?
Możesz użyć precyzyjnego linku do aplikacji z kilku powodów.
Uwierzytelnianie
Jeśli Twój agent ma do czynienia z potencjalnie poufnymi informacjami, jednym ze sposobów zabezpieczenia agenta jest użycie precyzyjnego linku do Twojej aplikacji, który umożliwia uwierzytelnienie użytkownika za pomocą odcisku palca, logowania lub innych metod. Gdy użytkownik się uwierzytelni, możesz śledzić uwierzytelnianie po stronie serwera i przekazać użytkownika z powrotem do agenta, wywołując nową wiadomość RBM. Jeśli wysyłasz potencjalnie poufne wiadomości, możesz sprawdzić po stronie serwera, czy użytkownik jest uwierzytelniony. Jeśli nie, możesz odesłać je z powrotem do aplikacji, aby odnowić token uwierzytelniający.
Obsługa złożonych przypadków użycia
Usługa RBM doskonale sprawdza się w przypadku interakcji konwersacyjnych, ale w niektórych przypadkach lepiej sprawdzają się aplikacje. Jeśli na przykład prowadzisz firmę produkującą meble i masz aplikację z funkcją rzeczywistości rozszerzonej, która pozwala użytkownikom wypróbować meble w domu (patrz rysunek poniżej), Twoje zastosowanie może być obsługiwane tylko przez aplikację.
W takiej sytuacji warto skierować użytkowników RBM do aplikacji, w której będą mogli wykonać pewne funkcje. Aplikacja może zawsze przywrócić użytkownika do rozmowy RBM, wywołując nową wiadomość od agenta.
Ułatwienie płatności
Możesz obsługiwać płatności w aplikacji innej firmy za pomocą precyzyjnych linków.
Załóżmy na przykład, że chcesz obsługiwać przelewy pieniężne za pomocą fikcyjnej firmy obsługującej płatności AcmePay. Po przeprowadzeniu badań online dowiadujesz się, że AcmePay obsługuje precyzyjne linki za pomocą własnej, unikalnej struktury identyfikatora URI, która umożliwia przekazywanie wartości dla odbiorców, kwoty i notki za pomocą parametrów ciągu zapytań.
Dzięki tej wiedzy agent musi utworzyć działanie OpenUrlAction ze sparametryzowanym identyfikatorem URI AcmePay określonym dla części adresu URL sugerowanego działania.
acmepay://paycharge?recipients=Jane+Smith&amount=10¬e=Money+For+You!
Gdy odbiorca wiadomości RBM kliknie sugerowane działanie, aplikacja AcmePay uruchomi się bezpośrednio na ekranie transakcji z wprowadzonymi już wartościami.
Co się stanie, jeśli aplikacja nie zostanie zainstalowana?
Jeśli aplikacja nie jest zainstalowana na urządzeniu użytkownika, działanie precyzyjnych linków zależy od struktury identyfikatora URI przekazanego do akcji OpenUrlAction. Jeśli co najmniej jedna aplikacja na urządzeniu rozpozna identyfikator URI (np. Chrome rozpozna adresy URL zaczynające się od „http://”), sugerowane działanie wyświetli się w tej aplikacji w zwykły sposób. Gdy użytkownik kliknie działanie, identyfikator URI otworzy się w dowolnej aplikacji rozpoznającej strukturę identyfikatora URI.
Jeśli jesteś deweloperem aplikacji, korzystne jest użycie precyzyjnych linków z adresami URI zaczynającymi się od „http://” i odwołującymi się do domeny należącej do Ciebie, ponieważ Chrome może przekierować użytkownika na stronę internetową jako działanie zastępcze. Na stronie internetowej możesz poprosić użytkownika o pobranie aplikacji lub skierować go do odpowiedniego miejsca w zależności od przypadku użycia.
Jeśli adres URI używa niestandardowej struktury, która nie jest rozpoznawana przez żadną aplikację na urządzeniu, zalecana akcja nie będzie wyświetlana w wiadomości RBM.
Aby mieć pewność, że sugerowane działania będą się zawsze wyświetlać, możesz użyć adresu URL, który należy do Ciebie, i spróbować przekierować przeglądarkę na niestandardowy identyfikator URI, który uruchamia aplikację. Jeśli aplikacja jest dostępna na urządzeniu, uruchomi się zgodnie z oczekiwaniami. Jeśli nie, użytkownik pozostanie na stronie internetowej, na której możesz go przekierować w zależności od potrzeb.
Poniżej znajdziesz przykład, jak to zrobić za pomocą JavaScriptu. Skrypt próbuje przekierować użytkownika do aplikacji AcmePay, ale jeśli nie jest ona zainstalowana, skrypt przekierowuje użytkownika do sklepu Google Play, gdzie można ją pobrać.
<!doctype html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width,minimum-scale=1.0, maximum-scale=1.0" />
<title>Acme Pay</title>
<script type="text/javascript">
window.onload = function() {
// Launch Acme Pay app for existing users
window.location = 'acmepay://paycharge?recipients=Jane+Smith&amount=10¬e=Money+For+You!';
// Redirect to Acme Pay app download for new users
setTimeout("window.location = 'https://play.google.com/store/apps/details?id=com.acmepay.android';", 1000);
}
</script>
</head>
<body>
<h1>Redirecting…</h1>
</body>
</html>
Podsumowanie
Za pomocą sugerowanego działania OpenUrlAction możesz tworzyć precyzyjne linki do aplikacji, które należą do Ciebie lub które chcesz aktywować, aby zwiększyć zaangażowanie użytkowników. Dzięki precyzyjnym linkom możesz zapewnić użytkownikom bogatsze i bardziej angażujące wrażenia lub zwiększyć bezpieczeństwo podczas udostępniania treści poufnych.
Powodzenia i udanego kodowania!