Как установить свойства Javascript в веб-браузере Android - PullRequest
1 голос
/ 15 сентября 2011

Я создаю приложение для Android, которое загружает веб-приложение в веб-представление.Когда пользователь посещает веб-приложение в браузере, появляется всплывающее окно с вопросом, хотят ли они добавить в закладки страницу.

Для родного приложения я хочу удалить это.

Для iPhone я смог сделать это:

    [webView stringByEvaluatingJavaScriptFromString:@"AppConfig.showBookmarkPrompt=false;"]; 

Для Android я попробовал это:

@Override
    public void onPageFinished(WebView view, String url) {
        view.loadUrl("javascript:(function(){"+
                "AppConfig.showBookmarkPrompt=false;})()");
    }

Версия Android не работает.Я предполагаю, что javascript запускается после показа всплывающей закладки.Я действительно не знаю, почему работает версия для iPhone, а не Android.

Есть много других способов достижения моих целей, но мне интересно, кто-нибудь может объяснить, почему метод iPhone работает и есть ли что-то подобное в Android.Я читал об этом через поиски в Google, но мне все еще не совсем ясно.

Спасибо за любую помощь, которую я получаю.

РЕДАКТИРОВАТЬ

Проблема была в том, что для Android я передавал функцию в JavaScript, где я должен был просто установить свойство следующим образом: view.loadUrl ("javascript: AppConfig.showBookmarkPrompt = false;");

Должно быть какое-то различие в том, как оно выполняется, что я не совсем понимаю.

1 Ответ

3 голосов
/ 15 сентября 2011

поместите это в onCreate () Activity ..

WebView myWebView = (WebView) findViewById(R.id.webview);
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true);

, затем назовите свой код ...

 @Override
public void onPageFinished(WebView view, String url) {
    view.loadUrl("javascript:AppConfig.showBookmarkPrompt=false");
}

Для получения дополнительной информации посмотрите здесь .

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