Phonegap: переопределение onDeviceReady

У меня есть проект phonegap, созданный для Android и использующий кордову. Я внедрил веб-приложение в этот проект телефонной связи. Это приложение имеет одну HTML-страницу, index.html. В этом индексном файле функция onDeviceReady() не вызывается. Однако эта страница работает отлично, только она вызывается из основной активности и по какой-то причине не переходит в эту функцию. Вероятно, это перекрывается функцией кордовы. Вопрос: как заставить эту функцию работать в файле index.html? Какая функция переопределяет/заменяет эту?

        function onLoad() {
			document.addEventListener("deviceready", onDeviceReady, false);
		}

		// device APIs are available
		//
		function onDeviceReady() {
			// Register the event listener
			document.addEventListener("backbutton", onBackKeyDown, false);
		}

		// Handle the back button
		//
		function onBackKeyDown(e) {
			e.preventDefault();
			navigator.notification.confirm("×”×?×? ברצונ×? ×?צ×?ת?", onConfirm, "יצי×?×”", "יצי×?×”,ביטו×?"); 
		}
		function onConfirm(button) {
			if(button==2){//If User selected No, then we just do nothing
				return;
			}else{
				navigator.app.exitApp();// Otherwise we quit the app.
			}
		}

Здесь происходит то, что onLoad вызывается, а onDeviceReady никогда не вызывается.


person Itamar    schedule 26.01.2016    source источник
comment
Из вашего вопроса неясно, пытались ли вы добавить document.addEventListener("deviceready", yourCallbackFunction, false);, и это не сработало.   -  person beaver    schedule 27.01.2016
comment
Откуда вы создаете свое приложение?   -  person Jose Rojas    schedule 27.01.2016
comment
Я использовал document.addEventListener (deviceready, yourCallbackFunction, false); @beaver   -  person Itamar    schedule 27.01.2016
comment
Я использую Sencha для создания приложения, прежде чем поместить его в пустой проект phonegap. Теперь я использую Android Studio для его запуска. @ХосеРохас   -  person Itamar    schedule 27.01.2016
comment
@Itamar, но функция callBackFunction не вызывается? не могли бы вы опубликовать соответствующий код?   -  person beaver    schedule 27.01.2016
comment
посмотрите в свой проект папки Android файл с именем cordova.js, вы должны импортировать его для вызываемой функции onDeviceReady   -  person Jose Rojas    schedule 27.01.2016


Ответы (1)


Для вызова функции onDeviceReady необходимо импортировать файл Cordova.js.

проверьте эту проблему, возможно, это поможет вам.

Где мне найти cordova.js?

person Jose Rojas    schedule 27.01.2016
comment
Получил это в моем файле запуска html: ‹script type=text/javascript src=cordova.js›‹/script› @JoseRojas - person Itamar; 28.01.2016