web-dev-qa-db-ja.com

システム実装がないため、PACサポートは無効になっています

最近、Nexus 4をAndroid 4.4にアップグレードしました。アプリをデバッグしているときに、メッセージW/chromium(14962): [WARNING:proxy_service.cc(888)] PAC support disabled because there is no system implementationを発見しました

どういう意味ですか ?


Logcat

12-12 17:38:56.726: V/WebViewChromium(14962): Binding Chromium to the main looper Looper{41f91588}
12-12 17:38:56.736: I/chromium(14962): [INFO:library_loader_hooks.cc(112)] Chromium logging enabled: level = 0, default verbosity = 0
12-12 17:38:56.736: I/BrowserProcessMain(14962): Initializing chromium process, renderers=0
12-12 17:38:56.746: W/chromium(14962): [WARNING:proxy_service.cc(888)] PAC support disabled because there is no system implementation
25

これは無視しても問題ないと思います。これは、Chromium Browser Engineでハードコード化されています。

Chromiumのソース( https://chromium.googlesource.com/chromium/src.git/+/master/net/proxy/proxy_service.cc )をチェックして_ProxyService::CreateUsingSystemProxyResolver_を確認すると、見つける

_if (!ProxyResolverFactoryForSystem::IsSupported()) {
  LOG(WARNING) << "PAC support disabled because there is no "
                "system implementation";
  return CreateWithoutProxyResolver(proxy_config_service, net_log);
}
_

ここで、WindowsまたはMacOSを使用していない場合、ProxyResolverFactoryForSystem::IsSupported()falseを返すだけです。

_class ProxyResolverFactoryForSystem : public ProxyResolverFactory {
  //[...]
  static bool IsSupported() {
#if defined(OS_WIN) || defined(OS_MACOSX)
    return true;
#else
    return false;
#endif
  }
};
_
40
gal242