zoukankan      html  css  js  c++  java
  • 【转】 android WebView使用cmwap无法联网解决办法

    2011-01-19 11:31
    转载自 rslhg
    最终编辑 pengwenfu2009

     android 在cmwap等代理接入点下的一些经验分享

    文/rslhg


    1.某些Rom在wifi环境下取代理依然会取到cmwap设置的代理值,所以取代理时判断一下手机网络环境,如果是gprs上网,则不取代理。
    ConnectivityManager connectivityManager = (ConnectivityManager) context
                        .getSystemService(Context.CONNECTIVITY_SERVICE);
                NetworkInfo activeNetworkInfo = connectivityManager
                        .getActiveNetworkInfo();
                if (activeNetworkInfo != null) {
                    int type = activeNetworkInfo.getType();

                    // TODO 防止wifi下读取移动的代理
                    if (type == ConnectivityManager.TYPE_MOBILE) {
                          //取代理
                           }else{
                      //不取代理
                    }
                  }

    2. 某些rom的webkit在cmwap下,webkit连接不上或是时断时连,需要在onResume()添加 WebView.enablePlatformNotifications();,onStop添加 WebView.disablePlatformNotifications();。但是此时如果你需要刚进入这个activity就load页面,第一次进入时load的第一个页面是load不出来的,会停留很久并且不出错误页面,不调用WebViewClient.onReceivedError。个人试过setHttpAuthUsernamePassword也不好使。
    个人解决方案:

        mWebPage.post(new Runnable(){
                @Override
                public void run() {
                    mWebPage.loadUrl(url);
                    
                }
                
            });

    此时第一此load页面会很快调用WebViewClient.onReceivedError,你再在WebViewClient.onReceivedError里面设置标志,重新载入第一个页面即可。

  • 相关阅读:
    POJ_3104_Drying_(二分,最小化最大值)
    POJ_3273_Monthly_Expense_(二分,最小化最大值)
    POJ_3185_The_Water_Bowls_(反转)
    POJ_2566_Bound_Found_(尺取法+前缀和)
    POJ_3061_Subsequence_(尺取法)
    POJ_3258_River_Hopscotch_[NOIP2015]_(二分,最大化最小值)
    POJ_1064_Cable_master_(二分,假定一个解并判断是否可行)
    POJ_2456_Agressive_cows_(二分,最大化最小值)
    背包九讲之三(多重背包)
    背包九讲之二(完全背包)
  • 原文地址:https://www.cnblogs.com/xiaoxiaoboke/p/2110219.html
Copyright © 2011-2022 走看看