как вызвать собственный класс Activity с html-страницы в гибридном приложении MobileFirst

Здравствуйте, я создаю гибридное приложение MobileFirst, и мне нужно запустить/вызвать метод класса Activity onCreate() при загрузке страницы index.html.


person Samra    schedule 30.06.2016    source источник


Ответы (3)


Используйте API SendAction: https://www.ibm.com/support/knowledgecenter/SSHS8R_7.1.0/com.ibm.worklight.dev.doc/devref/t_sending_actions_js_to_native.html

Вы можете вызвать прямо в wlCommonInit, который вызывается после полной инициализации MobileFirst SDK.

person Idan Adar    schedule 30.06.2016

Итак, вот что я сделал,

Унаследован класс CordovaActivity вместо класса Activity и реализован WLInitWebFrameworkListener. В событие onInitWebFrameworkComplete добавлено:

super.loadUrl(WL.getInstance().getMainHtmlFilePath());

Добавлен метод Oncreate()

WL.createInstance(this);
WL.getInstance().initializeWebFramework(getApplicationContext(), this);

и теперь мой SendActionAPI работает

person Samra    schedule 05.07.2016

person    schedule
comment
Спасибо! очень помогло, :) .. теперь мне нужно вызвать мою html-страницу из нативной активности, думаю, WL-клиент используется, но не знаю, как это сделать? - person Samra; 04.07.2016
comment
Может быть, я могу объяснить еще кое-что, я реализовал функцию OnActionReceived в своем JS и вызвал ее по щелчку элемента списка из моего собственного кода. WL.getInstance().sendActionToJS(LoadPageReceiver); Здесь WL.getinstance дает java.state.illegalstateexception - person Samra; 04.07.2016
comment
stackoverflow .com/questions/31331579/ перейдите по ссылке (пожалуйста, отметьте как отвеченный :)) - person Praj; 05.07.2016
comment
внедрите WLActionReceiver в свою деятельность, и он будет работать. - person Praj; 05.07.2016