【发布时间】:2015-06-15 05:13:08
【问题描述】:
我计划开发一个与我操作的服务器通信的 Android 应用。对android, httpurlconnection error 的答复表明HttpURLConnection 和HttpsURLConnection 等类需要授予应用程序“完全网络访问”权限(android.permission.INTERNET)。论坛上的某个人告诉我,对于绝大多数应用程序,android.permission.INTERNET 对用户隐私的侵犯是不可接受的,并且还有其他方式可以让应用程序与其开发人员运营的服务器进行通信,而不需要这种侵犯性允许。来自this post:
即使您查看流量,几乎所有应用程序都在使用 HTTP 与他们的服务通信,并且他们没有完全网络访问权限的合法需求,但同一个应用程序会要求完全的网络访问权限。但是,它可以让他们查看您的所有网络连接。
[...]
另外,不,您不需要“完全网络访问”来访问网络浏览器之外的任何内容。您只需要它关闭端口 80 HTTP。您仍然可以只为远程应用 API 使用子域。您将两种不同的权限混为一谈。
当我要求进一步说明如何在 Android 中实现这一点,以便我可以在 developer.android.com 上查找它时,回答是“你的无知并不能证明任何事情。”
那么在没有android.permission.INTERNET 的情况下,应用程序应该如何与其开发者操作的服务器通信呢?或者是否有可靠的消息来源表明这在 Android 中是不可能的?
【问题讨论】:
标签: android network-programming httpurlconnection privacy android-permissions