有没有办法判断iphone是否处于漫游状态?

2024-01-17

我正在开发一个 iPhone 应用程序,并且非常想确定该设备是否正在漫游,以便我可以智能地避免用户在脱离家庭网络时花费昂贵的连接费用。

我正在编写的应用程序适用于越狱手机,但如果可能的话,我更愿意使用标准 SDK。

这是我已经发现的:

1.苹果SDK:在苹果文档中,我在苹果的 SCNetworkReachability API 中找到了承诺。该 API 提供对诸如您是否在 WIFI 还是手机网络、当前是否建立网络连接等信息的访问。但是,在 SCNetworkReachability API 参考 pdf 中搜索“漫游”或“漫游”,结果均为零。他们的示例代码也是如此。

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
        );

这当然是一个线索,因为看来我可以注册接收用户已更改国际漫游设置的通知。不过,我不确定如何将其转化为他们实际上目前正在漫游的知识。

3.检查SpringBoard的类转储源:我已经使用转储了 SpringBoard 的类类转储 http://www.codethecode.com/projects/class-dump/。我找不到任何提及“漫游”或“漫游”的内容

4.显然我首先检查了SO:找不到任何相关内容。

进一步的步骤:这里有人有什么建议吗? 我知道这是可能的。然而,苹果显然让它变得非常难以找到。我非常怀疑如果不使用私有框架这是可能的。 (例如 CoreTelephony)。由于这是一个越狱的应用程序,我可能会通过在 SpringBoard 中注入代码来屏幕抓取运营商名称,但我真的宁愿不走这条路。非常感谢任何建议。谢谢。


有!它根本没有记录,我非常怀疑这是否适用于未越狱的手机(因为它需要使用不在沙箱中的文件)。然而,这是如何完成的。

iPhone 文件系统保留两个软链接:

static NSString *carrierPListSymLinkPath = @"/var/mobile/Library/Preferences/com.apple.carrier.plist";
static NSString *operatorPListSymLinkPath = @"/var/mobile/Library/Preferences/com.apple.operator.plist";

当这些链接指向同一个文件时,电话就没有漫游。当指向不同的文件时,电话正在漫游。

简化的代码(无错误检查等):

- (BOOL)isRoaming
{
    NSFileManager *fm = [NSFileManager defaultManager];
    NSError *error;
    NSString *carrierPListPath = [fm destinationOfSymbolicLinkAtPath:carrierPListSymLinkPath error:&error];
    NSString *operatorPListPath = [fm destinationOfSymbolicLinkAtPath:operatorPListSymLinkPath error:&error];
    return (![operatorPListPath isEqualToString:carrierPListPath]);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有没有办法判断iphone是否处于漫游状态? 的相关文章

  • 我可以使用 jpeg 图像来启动 Screen

    我目前正在进行应用程序开发 并且添加了一个 JPEG 格式的启动器屏幕 该屏幕在模拟器和设备中都显示 但这是否会对苹果批准指南产生任何问题 iOS 8 更新 您现在可以使用基于 XIB 的启动资产 https developer apple
  • Facebook iPhone SDK:上传图像时显示进度条

    我想在我的 iPhone 应用程序将图像上传到 Facebook 时显示进度条 是否可以 我可以对我发出的每个 FBRequest 执行此操作吗 我还使用 FBRequest 来检查扩展权限 有时需要花费很多时间 谢谢 对于进度条 您可以做
  • 如何用图片替换UITableView?

    我有一个 UITableView 默认为空白 直到用户编辑并向其添加数据 我想显示一张带有说明的图像 直到用户编辑它为止 图片的大小非常适合导航栏和标签栏之间 有没有办法以编程方式执行此操作 您可以使用removeFromSuperview
  • 使用 json 向 RESTful WCF 发送 Post 请求

    我已经尝试了每种组合来发送请求 以从 jQuery 向 RESTful WCF 发送 POST 请求 有人可以模仿并使其发挥作用吗 代码在这里 http pastebin com Ua97919C http pastebin com Ua9
  • 将 Array Obj-c 的内容转储到控制台

    我寻找了如何转储和数组到我主要找到的控制台 for id name in arrayStuff NSLog Array contents d name 我尝试了不同的格式化程序 d g 等 它们确实打印了不同的内容 但不是我 99 确信被输
  • 将自己的结构传递到 opengl es 2.0 着色器中

    我想尝试 OpenGL ES 2 0 编程指南 一书中的照明示例 在着色器中他们制作了两种结构 struct directional light vec3 direction normalized light direction in ey
  • UIScrollView - 启用分页后,我可以“更改”页面宽度吗?

    将滚动视图 将 pagingEnabled 设置为 YES 将页面宽度设置为滚动视图边界以外的其他值的最简单方法是什么 让我举个例子 假设我有一个包含 10 个项目的滚动视图 每个项目的宽度为 150 像素 而我的滚动视图的宽度为 300
  • 来自 iPhone/iPad 的 json Web 服务

    有人可以帮助我解决如何从 iphone 或 ipad 使用 json Web 服务的问题吗 这里我的要求是使用 API 密钥实现 json webservice 如果可能的话发布一些教程或示例链接 谢谢 规范的 JSON 处理库是here
  • 填充 CoreData 创建的 sqlite 数据库

    我有一个由 CoreData 模型自动创建的 sqlite DB 但我的应用程序不会让用户能够将数据写入其中 而是我想用程序所需的所有数据预先填充它 我的问题是 CoreData 创建的 sqlite DB 具有未知的表和字段 这些表和字段
  • 在 UIImage 顶部绘制透明圆圈 - iPhone SDK

    我在尝试找出如何在 UIImageView 中的 UIImage 顶部绘制透明圆圈时遇到了很多麻烦 谷歌给了我线索 但我仍然找不到有效的例子 有没有人知道的例子可以证明这一点 最简单的方法就是创建一个半透明的方形 UIView 然后将其图层
  • iPhone 和加密库

    我想我必须在我的 iPhone 应用程序中使用加密库 我想问你有关苹果公司实施的加密货币出口政策的影响 我需要做一些额外的事情吗 例如填写表格等 1 如果我使用 MD5 进行哈希处理 2 如果我使用对称加密 Thanks EDIT 2009
  • 为什么 iPhone 上的纹理图像需要具有二维幂?

    我正在尝试解决 iPhone 上的闪烁问题 open gl es game 我有一些没有 2 维的图像 我将用具有适当尺寸的图像替换它们 但为什么尺寸需要是 2 的幂 大多数系统 甚至许多现代显卡 需要 2 的幂纹理的原因是 mipmap
  • 苹果推送通知在生产中不起作用

    我们完全陷入困境 请帮忙 我和我的团队制作了一个 iPhone 应用程序 这是我们第一次在 iOS 上尝试 一切都很好 直到我们提交应用程序并在应用程序商店上可用为止 推送通知服务无法正常工作 我在网上搜索并尝试根据人们的建议仔细检查我们的
  • 在午夜更新应用程序徽章,并提供以下选项:应用程序未启动或在后台,徽章数量可能会减少

    我正在阅读许多有关本地通知的内容以及它们如何帮助更新应用程序徽章编号 我想在午夜更新此徽章 并将其值设置为我在午夜之前无法知道的数字 因此 如果可能的话 我想在午夜启动一个功能来更新 加载一些数据 检查要显示的数字 并将其显示在徽章上 当然
  • Objective-C中如何使继承的类能够看到父类的隐藏方法[重复]

    这个问题在这里已经有答案了 我有两个类 Class1 和 Class2 第二个类继承自第一个类 我需要重写 Class1 的 update 方法来实现我的目标 继承方法中 update方法的改变是在代码中间进行的 所以我不能使用 超级更新
  • 防止UIScrollView的UIPanGestureRecognizer遮挡UIScreenEdgePanGestureRecognizer

    我有一个UIScrollView它填满了我应用程序的一页上的屏幕 但我希望允许用户从屏幕边缘平移以显示其后面的视图 问题是 UIScrollView 窃取了我的触摸UIScreenEdgePanGestureRecognizer在屏幕边缘
  • iCloud loadFrom Contents - 如何处理 UIDocumentStateSavingError 和 UIDocumentStateEditingDisabled

    我在我的应用程序中使用 iCloud 来加载文本文件 加载文本文件时 当我调用时 iCloud 会调用此方法 UIDocument openWithCompletionHandler BOOL success etc BOOL loadFr
  • 如何减少典型 iPhone 应用程序的启动时间?

    需要明确的是 这是一个普通的 iPhone 应用程序 而不是游戏 我在网上读过几次 一些开发人员提到他们正在努力改进 减少应用程序的启动时间 但从来没有提供任何关于如何做到这一点的良好背景信息 那么问题很简单 如何减少 iPhone 应用程
  • 是什么导致了这个 iPhone 崩溃日志?

    我有点卡住了 需要解决这个问题 因为我的一个应用程序出现了随机崩溃 而这些崩溃并不总是能够重现 这是崩溃日志之一 Incident Identifier 59865612 9F00 44EA 9474 2BF607AD662E CrashR
  • 用 UIView 像翻书一样翻页?

    我正在尝试在之间切换UIViews让它看起来就像你正在翻书的一页 The UIViewAnimationTransitionCurlUp如果我能让它向左或向右卷曲 那就非常接近了 这可能吗 我尝试过使用CATRansition但没有一种动画

随机推荐

  • iPhone OS 中的核心动画中的“图像错位”是什么?

    Instruments 表示存在由核心动画制作的 未对齐的图像 这意味着什么 更新 我在 Instruments app gt 核心动画中看到了这一点 我希望了解有关您在哪里看到此内容的更多信息 但我怀疑它指的是未像素对齐的图像 Quart
  • UDP 服务与亚马逊网络服务

    再会 我在一个硬件项目的基于云的系统中经常使用 AWS 使用 SimpleDB 和提供的通知服务很棒 然而 我需要 AWS 上的一个后端来监听传入的请求 处理请求并将其发送回特定地址 某种 UDP 服务 我可以轻松地为其编写一个 C C 应
  • Linq GroupBy 将每个空值作为一个组

    我有一个具有可为 null int 属性 GroupId 的对象 有了这个对象的列表 我想对此 GroupId 执行 GroupBy 操作 但如果我这样做 所有空值将形成一个组 例子 对象 1 GroupId NULL 对象 2 Group
  • 拉取镜像时设备上没有剩余空间

    在 Windows 10 Build 14393 下使用 Docker 1 13 0 9795 当我尝试运行最新的 python 映像 即 3 6 时 出现 设备上没有剩余空间 的情况 gt docker run it python Una
  • 根据 Java 日期在 Postgres 中保存时间戳

    我有一个 Postgres 数据库 其中有一个包含时间戳的表 timeOfProcessing TIMESTAMP 我有一个 Java 日期时间值 java util Date dateTime 并希望将其值存储在该时间戳字段中 没有时区
  • 设置响应 ContentType 的中间件

    在我们基于 ASP NET Core 的 Web 应用程序中 我们需要以下内容 某些请求的文件类型应获得自定义 ContentType 作为响应 例如 map应该映射到application json 在 完整 的 ASP NET 4 x
  • 具有捆绑和缩小功能的 ASP.NET MVC 4 应用程序,为什么在调试模式下启用缩小?

    我刚刚将 ASP NET MVC 3 项目迁移到 MVC 4 NET 4 0 并安装了 NuGet 包Microsoft AspNet Web Optimization为了支持 CSS 和 JavaScript 的捆绑和缩小 我几乎已经完成
  • 如何跟踪 Magento 从哪里调用模板?

    我正在与 Magento 合作 请看下面的代码 有没有一种简单的方法可以找到 HTML 所在的位置 IE 有某种我可以使用的痕迹吗 在管理中转到系统 gt 配置 gt 开发者 从左上角的 配置范围 选择中选择一个商店 然后 调试 部分中将出
  • Git diff 工具对多个提交以及其间的其他提交进行比较

    我们有一个工作流程 其中提交的代码需要由其他开发人员审核 在简单的情况下 可以使用 git diff oldhash newhash gt diff txt 来完成 并将其上传到我们的审查委员会 但是有没有办法在多个提交之间创建差异并排除其
  • 如何使用 Angular 在 HMR 期间保留状态

    在 Angular 中 有没有办法在模块热重新加载后保留应用程序状态 与 VueJS 中发生的情况类似 到目前为止 我已经按照几个教程让 HMR 正常工作 但它所做的只是重新加载应用程序 而不进行实际的页面刷新 满载更快 是的 但仍然没有达
  • ASP.NET MVC ActionFilter - 确定是否是 AJAX 请求

    我使用 ActionFilter 来确定用户在执行操作之前是否有权访问特定资源 例如帐户对象 la Rhino Security 这是一个全局过滤器 如果授权值失败 它会重定向到错误页面 我正在使用以下代码 它适用于整页请求 filterC
  • Android:以编程方式更改视图的绝对位置

    如果您使用 AbsoluteLayout 我知道它已被弃用 但这是解决我的问题的唯一方法 problem https stackoverflow com questions 3438656 android scrollable horizo
  • 列表的最大后缀

    该问题试图找到给定列表的词典最大后缀 假设我们有一个数组 列表 e1 e2 e3 e4 e5 那么 e1 e2 e3 e4 e5 的所有后缀为 e1 e2 e3 e4 e5 e2 e3 e4 e5 e3 e4 e5 e4 e5 e5 那么我
  • 流式传输音频和视频

    我已经尝试了一段时间但很挣扎 我有两个项目 将音频流式传输到服务器以通过网络分发 将音频和视频从网络摄像头流式传输到服务器 以便通过网络分发 到目前为止 我已经尝试过 ffmpeg 和 ffserver PulseAudio mjpegst
  • 进行ajax调用并在qtip中显示内容

    我正在为下拉列表编写代码 下拉列表是根据数据库中的数据填充的 因此 我进行了 2 个 ajax 调用 一个是在 onmouseover 事件上填充下拉列表的内容 另一个是在选择特定选项时进行 ajax 调用以将相关内容显示在屏幕上 现在我想
  • DSOFramer 在另一个窗口中关闭 Excel 文档。如果文件中未保存数据,dsoframer 无法打开并显示“尝试访问无效地址”

    我在用着Microsoft s DSOFramer控件允许我在对话框中嵌入 Excel 文件 以便用户可以选择他的工作表 然后选择他的单元格范围 它与我的对话框上的导入按钮一起使用 问题是当我打电话时DSOFramer s OPEN函数 如
  • Pandas - 对 Na 以外的值使用“ffill”

    有没有办法使用ffill对非值的方法NaN I have NaN在我的数据框中 但我添加了这些NaN using addNan sample colA replace A NaN 这就是我的数据框 df好像 ColA ColB ColC C
  • 如何在pyopengl中使用鼠标旋转立方体

    我知道问题是什么 但我无法找出解决方案 问题在于 旋转是在立方体上固定轴的情况下应用的 因此 如果将一个轴旋转 Pi 弧度 则另一轴看起来就像鼠标控件被反转 我希望它能够做到这一点 因此单击鼠标左键 然后将鼠标向右移动可将立方体向右旋转 将
  • 从 str 和 Enum 继承有哪些注意事项

    使用从两者继承的类有哪些注意事项 如果有 str and Enum 这被列为解决以下问题的可能方法将 Enum 成员序列化为 JSON https stackoverflow com questions 24481852 serialisi
  • 有没有办法判断iphone是否处于漫游状态?

    我正在开发一个 iPhone 应用程序 并且非常想确定该设备是否正在漫游 以便我可以智能地避免用户在脱离家庭网络时花费昂贵的连接费用 我正在编写的应用程序适用于越狱手机 但如果可能的话 我更愿意使用标准 SDK 这是我已经发现的 1 苹果S