我正在尝试(想知道是否有可能)编写一个应用程序,它会根据某些标准自动更改网络选择模式。eg将网络运营商从Vodafone改为T-Mobile(假设SIM卡注册成功,但我不担心atm)
不幸的是,我似乎无法在 API 中找到任何方法来做到这一点。有人有什么想法吗?我认为,由于它不在公共 API 中,因此如果手机已植根,可能仍有办法做到这一点。真的吗?如果是这样,我应该在哪里看?
提前致谢
我正在尝试(想知道是否有可能)编写一个应用程序,它会根据某些标准自动更改网络选择模式。eg将网络运营商从Vodafone改为T-Mobile(假设SIM卡注册成功,但我不担心atm)
不幸的是,我似乎无法在 API 中找到任何方法来做到这一点。有人有什么想法吗?我认为,由于它不在公共 API 中,因此如果手机已植根,可能仍有办法做到这一点。真的吗?如果是这样,我应该在哪里看?
提前致谢
对不起,你不能。
您可以查看TelephonyManager。
可以知道当前的算子:getSimOperator(Name) / getNetworkOperator(Name)。
您还可以查看此线程,说“我了解到,为了安全起见,没有任何公共 API 可以管理此问题,因此唯一的选择是将用户发送到我的应用程序中的系统 PreferenceScreen。”
使用 android.telephony.CarrierConfigManager 怎么样?我在https://developer.android.com/reference/android/telephony/CarrierConfigManager.html上阅读了它,它似乎允许您更改很多特定于运营商的参数,尽管应用程序必须使用具有的证书进行签名与 SIM 上的一个匹配的签名,因此通常只能由发行 SIM 的运营商实现。另请参阅https://source.android.com/devices/tech/config/carrier。
我还没有找到主动切换运营商的实际方法,但如果有的话,我希望它会在那里。