не удается вызвать веб-сервис из веб-просмотра

0

Я не могу позвонить в веб-службу или не отображается предупреждение:

мой код активности:

mWebView = (WebView)findViewById(R.id.webViewRootAciviy);
mWebView.setWebViewClient(new WebViewClient());
mWebView.setWebChromeClient(new WebChromeClient());
mWebView.loadUrl("file:///android_asset/splashscreen.html");

html-код:

<html>
    <body>
        this is a demo html file.
        <script type="text/javascript" src="/jquery-1.7.1.min.js"> 
            $.ajax({
                type: 'GET',
                url: 'http://192.168.11.50/ar/service.svc/ProductCategories?$format=json',
                dataType: "json",
                contentType: "application/json; charset=utf-8",
                success: function (data)
                {
                    alert("success");
                },
                error: function (error)
                {
                    alert("error");
                }
            });
        </script>
    </body>
</html>

Также предоставляется разрешение на Интернет. Пожалуйста, помогите мне найти то, что я пропустил.

Редактировать:

У нас есть собственный сервер в нашей компании, и на нем размещен сервис. Я использую Wi-Fi для доступа к Интернету, а сервер также подключается к тому же Wi-Fi-маршрутизатору с помощью Ethernet-кабеля.

Обновление: я не знаю, почему это произошло. Проблема возникла из-за типа созданной службы. Веб-сервис был создан с использованием WCF Data service, но после повторного создания веб-службы с использованием обычной WCF Service URL-адрес теперь работает нормально.

2 ответа

0
 // I used this class and my code is working fime at my side please try this may be it will help you 


    public class WebViewActivity extends Activity {
        private WebView webview;
        private static final String TAG = "Main";
        private ProgressDialog progressBar;
        private TextView header_maintext;
        private TextView headeroptiontext;
        private RelativeLayout back;
        private String url_string="http://www.google.com";
        private String header_maintext_string="Your text";  

        /** Called when the activity is first created. */
        @SuppressLint("SetJavaScriptEnabled") @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
             requestWindowFeature(Window.FEATURE_NO_TITLE);
             setContentView(R.layout.webview_layout);


            webview = (WebView)findViewById(R.id.webview01);
            header_maintext= (TextView)findViewById(R.id.header_maintext);
            header_maintext.setText(header_maintext_string);

            headeroptiontext = (TextView)findViewById(R.id.headeroptiontext);
            headeroptiontext.setVisibility(View.GONE);

            WebSettings settings = webview.getSettings();
            settings.setJavaScriptEnabled(true);
            webview.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);
            webview.getSettings().setLoadWithOverviewMode(true);
            webview.getSettings().setUseWideViewPort(true);

              back = (RelativeLayout) findViewById(R.id.back_layout);
              back.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View arg0) 
                {
                    // TODO Auto-generated method stub
                    if(webview.canGoBack() == true)
                        {
                            webview.goBack();
                        }
                    else
                        {
                            finish();
                        }
                 }
            });

            final AlertDialog alertDialog = new AlertDialog.Builder(this).create();

            progressBar = ProgressDialog.show(WebViewActivity.this, "My application", "Loading...");

            webview.setWebViewClient(new WebViewClient() {
                public boolean shouldOverrideUrlLoading(WebView view, String url) {

                    view.loadUrl(url);
                    return true;
                }

                public void onPageFinished(WebView view, String url) {
                    Log.i(TAG, "Finished loading URL: " +url);
                    if (progressBar.isShowing()) {
                        progressBar.dismiss();
                    }
                }

                public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {

                    Toast.makeText(WebViewActivity.this, "Oh no! " + description, Toast.LENGTH_SHORT).show();
                    alertDialog.setTitle("Error");
                    alertDialog.setMessage(description);
                    alertDialog.setButton("OK", new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int which) {
                            return;
                        }
                    });
                    alertDialog.show();
                }
            });
            webview.loadUrl(url_string);


        }
        @Override

        public boolean onKeyDown(int keyCode, KeyEvent event) {
            if(event.getAction() == KeyEvent.ACTION_DOWN){
                switch(keyCode)
                {
                case KeyEvent.KEYCODE_BACK:
                    if(webview.canGoBack() == true){
                        webview.goBack();
                    }else{
                        finish();
                    }
                    return true;
                }

            }
            return super.onKeyDown(keyCode, event);
        }
    }
0

примените это к веб-просмотру.

 webView.setWebViewClient(new WebViewClient() {
        public boolean shouldOverrideUrlLoading(WebView view, String url) {

                view.loadUrl(url);

                return true;
            } else {
                return false;
            }
        }

        @Override
        public void onPageFinished(WebView view, String url) {
            // TODO Auto-generated method stub
            super.onPageFinished(view, url);

        }
    });

    webView.getSettings().setJavaScriptEnabled(true);

    webView.loadUrl(give your url);
  • 0
    Сожалею. Не работает.
  • 0
    Что мне не хватает ??
Показать ещё 4 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню