有谁知道Android堆栈中的哪个位置"限制背景数据"设置是强制执行的以及如何强制执行? (即,在后台运行时,后台的应用程序不允许使用手机数据网络 - WIFI不受影响。)
非常感谢,
耶
答案 0 :(得分:0)
Android在任何Linux机器上使用iptables规则限制对某些用户的数据访问(Android上每个用户下载的应用程序都在其自己的唯一用户ID下运行)。
如果您希望删除应用的限制,可以从root shell中删除该规则。
iptables -F penalty_box -j REJECT
或在较新的设备上,如下所示:
iptables -F bw_penalty_box -j REJECT
然而,在重新启动时,Android会自动将规则强制执行到iptables。为防止出现这种情况,您需要从&#34; /data/system/netpolicy.xml &#34;中删除<uid-policy ...>
。全局限制后台数据设置可以通过设置&#34; restrictBackgroundData &#34;来删除。属于&#34; false&#34;在<policy-list ...>
节点上。
除 netpolicy.xml 更改外,您必须重新启动才能使更改生效。
注意:任何这些操作都可能需要以 root 运行。