1

我正在考虑编写一个 Android 平板电脑应用程序,作为广泛的家长控制解决方案的一部分。

该应用程序应将平板电脑设置为与将在系统范围内使用的代理服务器一起使用(该设备上的所有应用程序都将被迫使用代理服务器)。

代理服务器的工作是过滤和监控来自平板电脑的所有传出连接。作为其中的一部分,只有特定站点将可用,而大多数应用程序将被阻止(包括 Google Play 商店或设备上安装的任何其他通信应用程序)。

另外,如果通过监视和更改设置或使用密码阻止用户,我希望用户无法更改或删除代理设置。

实际的代理服务器已经在运行并且可以正常工作。重要的是应用程序不需要自定义 ROM 和/或 root 访问权限

可以做到吗?

4

2 回答 2

2

默认情况下,如果无法访问所有系统,控制应用程序将无法工作 - 意味着 root 访问权限 - 您可以尝试了解 Android Anti Virus 软件使用的原理,这将有所帮助。

默认情况下,好像现在无法为应用程序设置代理...

于 2012-11-09T13:58:13.240 回答
-1

我有一段时间有同样的问题。我使用一个执行 http 请求的库,但我无法访问源代码。所以我开始挖掘,有两件事我需要做。一个是在我自己的 http 请求之前添加这段代码:

HttpClient httpClient = new DefaultHttpClient();
if (useProxy) {
  HttpHost proxy = new HttpHost("192.168.1.10", 8080, "http");
  httpClient.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy);
}
//use httpClient for a request here

但这并没有完全解决我的问题。我无法访问发出自己请求的库的源代码。我寻找了更多解决方案,发现您可以使用以下代码为您的应用程序发出的所有请求设置默认代理。

System.setProperty("http.proxyHost", "192.168.1.10");
System.setProperty("http.proxyPort", "8080");

添加此代码后,来自库的请求也会通过代理。

于 2013-08-01T11:34:57.970 回答