Intereting Posts
UnsatisfiedLinkError В Android 4.4 libDevil не может найти символ «png_set_longjmp_fn» Звук с низкой задержкой на Android через NDK Android.media.audiofx.Visualizer бросает исключение каждый раз Как показывать объявления в приложении Android, которые извлекаются с моего собственного сервера Какой контроль над выбором текста это? API Android V2 и API для Google Maps Ошибка приложения при назначении нового адаптера для моего ViewPager Как проверить, был ли изменен EditText или нет? Как получить доступ к кодам статуса MediaMetadataRetriever.setDataSource (…)? Как я могу увеличить область касания для элементов управления (ToggleButton)? IllegalStateException в Google Play Game Service не имеет смысла Где найти бесплатные открытые пользовательские элементы управления Android? Как установить размер и размер текста в DP внутри программы? Изменение свойства MaxLines TextView с анимацией? Передайте и получите объект JSON из веб-службы Jersey Resftul от android

Log <GATE-M> DEV_ACTION_COMPLETED </ GATE-M>, похоже, задерживает выполнение на Android

Недавно я заметил, что в моем приложении есть случайная LAG. И LAG я имею в виду, что это может занять до 40 секунд, зависит от использования Wi-Fi или мобильных данных …

Я загружаю URL-адрес страницы, а затем загружаю js для выполнения:

webView = (WebView) view.findViewById(R.id.WebView); webView.setWebViewClient(new WebViewClient() { @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { logDebug("Loading URL: " + url); super.onPageStarted(view, url, favicon); } @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { return WrappingClass.this.shouldOverrideUrlLoading(view, url); } @Override public void onPageFinished(WebView view, String url) { super.onPageFinished(view, url); logInfo("loading JavaScript to webview."); webView.loadUrl("full-js-here"); } @Override public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) { logError("error code:" + errorCode); super.onReceivedError(view, errorCode, description, failingUrl); } }); WebSettings webSettings = webView.getSettings(); webSettings.setSavePassword(false); webSettings.setSaveFormData(false); webSettings.setJavaScriptEnabled(true); webView.requestFocus(View.FOCUS_DOWN); webView.loadUrl("url"); 

После вызова URL-адреса загрузки страница отображается в веб-представлении, пользовательский интерфейс реагирует, я могу нажать на кнопки, вернуться и перейти к приложению …

НО

Сценарий, который я пытаюсь запустить, не выполняется, только до тех пор, пока в журнал не будет напечатано DEV_ACTION_COMPLETED , тогда все вернется в нормальное состояние, и вызывается onPageFinished и запускает скрипт мгновенно. Проблема в этом может занять до 40 секунд.

== UPDATE ==

Кажется, что задержка возрастает до некоторой точки, и после этого задержка сокращается до нуля и снова растет … ее как последовательность: 0,1,2,4,8,16,32 … и затем начинается От 0.

Может быть, потому, что я создаю новые действия с веб-просмотром за слишком короткое время?

Есть предположения?

Нам удалось набросать решение для этой дрянной проблемы … независимо от того, что я пробовал, я не мог найти решение Java для этой проблемы, но мы нашли решение HTML + JavaScript:

Вместо того, чтобы ждать onPageFinish java, мы добавляем java-скрипт для прослушивания события window.onLoad …

И там мы вводим наш фактический JavaScript … работает как шарм …

Больше подробностей.