我正在开发一个iPhone应用程序,并且非常想确定设备是否正在漫游,以便我可以智能地避免在用户家庭网络之外花费昂贵的连接.
我写的应用程序是用于越狱手机,但如果可能的话,我更愿意使用标准的SDK.
这是我已经找到的:
1. Apple SDK: 在Apple文档中,我在Apple的SCNetworkReachability API中找到了承诺.通过API,您可以访问WIFI或手机网络,当前是否建立了网络连接等.但是,搜索SCNetworkReachability API参考pdf以获取"漫游"或"漫游"两者均为nil.他们的示例代码也是如此.
2.越狱iPhone FS的Grep: 首选项 - >常规 - >网络选项卡是用户可以打开或关闭漫游的地方.查看plist文件("/Applications/Preferences/Network.plist"),我能够找到以下引用:
PostNotification = "com.apple.commcenter.InternationalRoamingEDGE.changed";
cell = PSSwitchCell;
default = 1;
defaults = "com.apple.commcenter";
key = InternationalRoamingEDGE;
label = "EDGE_ROAMING_TOGGLE";
requiredCapabilities = (
telephony
);
Run Code Online (Sandbox Code Playgroud)
这当然是一个领先者,因为看起来我可以注册用户更改了InternationalRoaming设置的通知.尽管如此,我不确定如何将其变成他们实际上正在漫游的知识.
3.检查SpringBoard的类转储源: 我使用class-dump转储了SpringBoard的类.我无法找到任何"漫游"或"漫游"的引用
4.显然我开始在SO检查这个: 找不到任何相关的东西.
进一步的步骤:有人在这里有任何建议吗?我知道这是可能的.但苹果显然很难找到它.我非常怀疑,如果不使用私有框架,这是可能的.(例如CoreTelephony).由于这是一个越狱的应用程序,我可能会使用SpringBoard中的注入代码来屏幕抓取运营商名称,但我真的更愿意不去那条路线.任何建议都非常感谢.谢谢.
我正在尝试创建一个ios应用程序,我想根据他们使用的数据提供程序对用户进行细分,例如Verizon和AT&T.是否可以从ios应用程序以编程方式获取此信息.提前致谢.
目前我正在为我的应用程序开发身份验证模块.用户提供他的电话号码和短信,并向他发送一些密码.
用户输入代码,如果有效,则对其电话号码进行验证.也许你知道WhatsApp,当你第一次运行应用程序时,它会完全相同.
但是,如果用户在他的手机中放入新的SIM卡,他应该再次对其进行身份验证.
我想知道如何确定电话号码是否已更改.我在其他一些问题中读到,无法确定电话号码本身.但是,例如WhatsApp认识到还有另一个电话号码.
有任何想法吗?
如此处所述 - >以编程方式从iPhone中检索运营商名称
我正在尝试获取我的运营商名称,我正在使用此代码
CTTelephonyNetworkInfo *netinfo = [[CTTelephonyNetworkInfo alloc] init];
CTCarrier *carrier = [netinfo subscriberCellularProvider];
NSLog(@"Carrier Name: %@", [carrier carrierName]);
[netinfo release];
Run Code Online (Sandbox Code Playgroud)
但我收到一个警告[carrier carrierName]:未找到实例方法'-carrierName'
我已经添加了框架coretelephony到我的项目,但当我执行我的应用程序时它崩溃了!
谢谢大家!
有没有办法从移动网络获取国家/地区代码.我们可以通过代码获取设备中存在的SIM的国家名称吗?
请用一些有效的代码帮助我.我检查了CoreTelephony Framework但是ddnt获得了成功.
提前致谢 !!