Идентификатор посетителя Experience Cloud не переносится автоматически из собственного мобильного приложения на (мобильную) веб-страницу.Короче говоря, нативные приложения на самом деле не хранят данные локально так же, как веб-браузеры, поэтому нет автоматической возможности использовать один и тот же механизм / источник локального хранения между ними.
Для того, чтобы сделатьдля этого необходимо добавить код в мобильное приложение, чтобы добавить значение mid
к целевому URL, например:
Android
String urlString = "http://www.example.com/index.php";
String urlStringWithVisitorData = Visitor.appendToURL(urlString);
Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(urlStringWithVisitorData));
startActivity(browserIntent);
iOS
NSURL *url = [NSURL URLWithString:@”http://www.example.com/index.php"];
NSURL *urlWithVisitorData = [ADBMobile visitorAppendToURL:url];
[[UIApplication sharedApplication] openURL:urlWithVisitorData];
Если все реализовано правильно, вы должны увидеть параметр adobe_mc=
, добавленный к целевому URL.Затем, при просмотре страницы целевой страницы, если у вас есть реализованные библиотеки Adobe Analytics javascript и библиотеки Experience Cloud Visitor ID, они будут автоматически искать и использовать это значение вместо того, чтобы генерировать новое значение (для этого не требуется никакой настройки / кодирования)).
Обновление:
@Ramaiyavraghvendra
Вы сделали комментарий:
Привет @Crayon, большое спасибо за ваш глубокий ответ.Мне жаль, что я пропустил, чтобы сообщить, что это приложение не является родным, но это приложение SPA.Таким образом, реализация всего приложения также осуществляется через запуск.Не могли бы вы помочь в этом случае.
Я не совсем уверен, что понимаю вашу проблему.Если вы НЕ переходите с нативного мобильного приложения на веб-страницу, и ваше мобильное приложение на самом деле представляет собой веб-приложение SPA, которое выводит Launch в виде обычного кода JavaScript во всем приложении, то вам не нужно ничего делать;служба Experience Cloud ID должна переносить идентификатор со страницы на страницу.
Мне кажется, что, возможно, ваши настройки Experience Cloud Visitor ID и / или настройки сервера сбора данных Adobe Analytics настроены неправильно.Переменные периода в домене cookie могут быть проблемой, если для входа в систему необходимо перейти с сайта www.mysite.com на www.mysite.co.uk или аналогичный, но это не должно быть проблемой, если у TLD такое же количество # периодов.
Или переменные trackingServer
и trackingServerSecure
могут быть настроены неправильно.На практике я обычно вообще не устанавливаю trackingServerSecure
.Эти переменные приводят к путанице и ошибкам IMO в разных сценариях по сравнению с тем, что вы используете, поэтому я склонен использовать значение «secure» в поле trackingServer
и оставить поле trackingServerSecure
пустым, а затем Experience Cloud Visitor ID иAdobe Analytics будет использовать безопасную версию 100% времени.
Или ... это может быть ряд других переменных конфигурации, которые не установлены должным образом.Трудно сказать, отключено ли это, без доступа к приложению и контейнеру запуска.
Также вы можете проверить заголовки ответов для ваших страниц входа.Возможно, они настроены на отклонение определенных существующих файлов cookie, отличных от https, или чего-то еще, что фактически приводит к невозможности чтения существующих файлов cookie и заставляет службу Experience Cloud ID создавать новый идентификатор и файлы cookie.
Или .. может быть, ваше приложение является нативным мобильным приложением, но использует обертку http для загрузки веб-страниц, так что это в основном веб-браузер, но по сути это похоже на переход от одного веб-браузера к другому (например, начиная с www.site.com/pageA в Chrome, а затем скопируйте / вставьте этот URL в Internet Explorer для просмотра).Так эффективно, разные баночки печенья.
Launch (или DTM) + Experience Cloud ID (методы Javascript)
В случаях, таких как последние 2абзацы, вы должны украсить свои целевые ссылки так же, как мой первоначальный ответ, но с использованием синтаксиса JavaScript Launch + Experience Cloud ID Service:
_satellite.getVisitorId().appendVisitorIDsTo('[your url here]');
Вы пишете некоторый код, чтобы получитьцелевой URL ссылки.Затем выполните его через этот код, чтобы вернуть URL с добавленными к ним параметрами, а затем обновите ссылку с помощью нового URL-адреса.
Супер общий пример, который просто обновляет все ссылки на странице.На практике это следует делать только для соответствующих ссылок, на которые перенаправлен посетитель.
var urls = document.querySelectorAll('a');
for (var i = 0, l = urls.length; i < l; i++) {
if (urls[i].href) {
urls[i].href = _satellite.getVisitorId().appendVisitorIDsTo(urls[i].href);
}
}