Аналитика Worklight, собственный API Java, никаких сообщений на панели инструментов
Worklight 6.2.0 - родное приложение Worklight на Samsung Galaxy S4, Android 4.4.2
WLAnalytics.enable();
WLAnalytics.log("some text", new org.json.JSONOBject() );
WLAnalytics.send();
// and also go on to successfully call an adapter
Аналитика Dasboard показывает версию приложения и активность адаптера. Поиск по журналу не показывает никаких сообщений журнала приложений, а выпадающий список для выбора приложений показывает только "Все приложения", никаких признаков моего приложения.
Я пропустил какой-то шаг инициализации? Есть другие идеи?
** отредактировано, чтобы добавить **
Было предложено использовать метод:
WLAnalytics.log("some text");
В нашей среде CLI 6.2.0.00 такого метода Java нет.
2 ответа
Ответ заключается в том, что существует дополнительное требование инициализации, которое, по-видимому, необходимо при работе с чистым Native-приложением; обычно они создаются с использованием инструмента Worklight CLI.
Это инициализация, обратите внимание на вызов Logger.setContext()
WLAnalytics.enable();
Logger.setContext(this);
Тогда это работает
WLAnalytics.log("My test message2", new org.json.JSONObject());
Стоит отметить, что вызов WLAnalytics.send() не является обязательным при нормальной работе, так как обычно аналитические данные буферизируются и отправляются в качестве дополнения к вызовам адаптера. Однако во время тестирования вызов send () действительно помогает.
Кроме того, при работе в среде, в которой WAR-файл Analytics находится на отдельном компьютере от WAR-сервера Worklight Server, возникают дополнительные задержки. Следовательно, тестирование всего этого требует осторожности.
На данный момент я предлагаю вам просто использовать метод WLAnalytics.log(String). Есть некоторые явные несоответствия, которые необходимо устранить, будь то с помощью документации или исправлений кода.
API-интерфейсы WL.Logger изначально создавались для отправки данных журнала в пользовательский адаптер, поэтому они используют словарь / объект для дополнительных метаданных. Данные, отправленные на пользовательский адаптер, могут быть прочитаны как допустимый объект JSON для выполнения операций с адаптером.
API-интерфейсы WL.Analytics имитировали API-интерфейсы WL.Logger для той же цели: анализа JSON на адаптере рабочего освещения. Сервер оперативной аналитики стал удобен для перехвата и отображения некоторых из этих журналов, но не все они фиксируются, как вы узнали.
Все ваши вопросы действительны, так как ничего из этого не описано в документации. В будущих выпусках мы можем использовать дополнительный объект JSON, переданный в API в консоли операционной аналитики, но на данный момент они служат только своей первоначальной цели - отправке аналитики в пользовательский адаптер.