/ / jQuery Mobile не працює на пристроях з ОС Android 5.0+, на яких встановлено Android System WebView 45.0.2454.95 - javascript, android, jquery, jquery-mobile, android-webview

jQuery Mobile не працює на пристроях з ОС Android 5.0+, на яких встановлено Android System WebView 45.0.2454.95 - javascript, android, jquery, jquery-mobile, android-webview

У нас є ця проблема, коли наша заявкаперестала працювати на пристроях Android 5.0+, оскільки Google випустила останню версію Android System WebView 45.0.2454.95. Якщо ми вимкнемо цю версію WebView, перейшовши до налаштувань пристрою, програми, Android System WebView і натиснувши Disable: програма знову працює. Проте це не є задовільним для деяких наших клієнтів, і нам дійсно потрібно знайти виправлення, де він працює з останньою версією Android System WebView.

Наше додаток робить важко використовувати jQuery і jQuery Mobile. В даний час ми використовуємо jQuery 1.7.1 і jQuery Mobile 1.1.0. Ми не можемо легко перейти на нову версію.

Коли сторінка завантажується в додатку, будь-який метод, який викликається всередині вибору jQuery, не запускається, наприклад.

$(function() { //Your code here });

Цей код успішно виконується, коли використовується стара версія WebView, але не використовується остання версія. Спроба виклику коду поза селектором призвела до інших проблем.

Під час моїх розслідувань поки що я маювиявив, що проблема виникла з чогось у jQuery Mobile, коли я видаляю посилання на jquery.mobile.js, потім код виконується знову. Однак, як ви могли б очікувати, що проблеми виникають через те, що jQuery Mobile є невід'ємною частиною нашої програми.

Хто-небудь знає про будь-які проблеми з jQuery Mobile в останній версії Android System WebView, які можуть викликати це?

Відповіді:

1 для відповіді № 1
$.mobile.pushStateEnabled=false;

Приклад:

<script type="text/javascript">
$( document ).ready(function() {
$.mobile.pushStateEnabled = false;
});
</script>

0 для відповіді № 2
<script type="text/javascript">
$(document).bind("mobileinit", function(){
$.mobile.pushStateEnabled = false;
});
</script>

<script src="jquery-mobile.js"></script>