Uncaught SyntaxError: неожиданное зарезервированное слово в более старой версии Android - PullRequest
0 голосов
/ 22 мая 2018

Я программирую приложение с использованием cordova и тестирую его на Android 8.0.0, оно работает нормально.Но на телефоне моего друга (android 4.4.4) это не работает, я получил эти ошибки в журнале консоли.

Uncaught SyntaxError: Unexpected reserved word Widget.js:9
Uncaught SyntaxError: Unexpected reserved word Image.js:8
Uncaught SyntaxError: <unknown message reserved_word> Button.js:7
Uncaught SyntaxError: <unknown message reserved_word> TextArea.js:8
Uncaught SyntaxError: <unknown message reserved_word> Effect.js:8
Uncaught SyntaxError: Unexpected reserved word View.js:9
Uncaught SyntaxError: <unknown message reserved_word> User_interface.js:8
Uncaught SyntaxError: <unknown message reserved_word> Communication.js:8
Uncaught SyntaxError: <unknown message reserved_word> App.js:7

Эти ошибки блокируются по ключевому слову "class"

Uncaught SyntaxError: Unexpected token ) index.js:16

и также блокировать:

AndroidFullScreen.immersiveMode(()=>{},()=>{});

Здесь я думаю, что он не распознает функцию стрелки, но я не уверен.

Я хотел бы знать, могу ли я это исправитьили телефон просто слишком стар для моего приложения?Если вам нужна другая информация, скажите мне, и я предоставлю ее:)

Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 01 июня 2018

Знаете ли вы кого-нибудь, кто случайно разбудил оригинальный и обновленный хром до 55 или выше?

0 голосов
/ 28 мая 2018

До того, как Android 4.4 cordova использовала старый браузер Android (очень старая поддержка HTML 5).

Начиная с Android 4.4 браузер Android был заменен Chrome, но версия Chrome, используемая веб-представлением, не могла 'не может быть обновлен (версия 36 для 4.4).

Начиная с Android 5.0, Chrome теперь в apk и может быть обновлен.

Для функций стрелок требуется минимальная версия Chrome 45, поэтому вашприложение не работает корректно на телефоне вашего друга.

Если вы хотите, чтобы ваше приложение работало корректно на телефонах старше Android 5, вы можете:

  • не использовать слишком недавний javasctipt (проверьте поддержку на caniuse)
  • используйте плагин crosswalk для встраивания веб-просмотра в ваше приложение

Предполагалось, что Crosswalk всегда использует последнюю версию Chromium, но, к сожалению, проект больше не обновляетсяпоэтому вы также не сможете использовать последние обновления javascript.(последняя версия Crosswalk использует версию хрома 53, которая намного новее, чем 36, используемая в Android 4.4)

Преимущество Crosswaalk состоит в том, что ваше приложение имеет одинаковую поддержку html / js / css на всех устройствах, поэтомуВы знаете, как ваше приложение будет работать / выглядеть на всех устройствах.

Использование Crosswalk приведет к гораздо большему APK, так что это не всегда лучший вариант.

Вы также можете создать два разных apkверсии, одна для Android <5.0 и одна для более новых. </p>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...