首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

调用标记为NS_UNAVAILABLE的方法时未显示错误

是指在iOS开发中,当我们调用一个被标记为NS_UNAVAILABLE的方法时,编译器并不会给出错误提示。

NS_UNAVAILABLE是Objective-C中的一个宏定义,用于标记某个方法或属性不可用。通常情况下,这是由于该方法或属性已经被废弃或不再被支持,开发者应该使用其他替代方法或属性。

当我们调用一个被标记为NS_UNAVAILABLE的方法时,编译器不会给出错误提示,这意味着我们可以编译并运行代码,但在运行时可能会出现未定义的行为或错误。

为了避免调用标记为NS_UNAVAILABLE的方法而未显示错误,开发者应该遵循以下几点:

  1. 仔细阅读文档:在使用任何方法或属性之前,应该仔细阅读相关的文档,了解其是否被标记为NS_UNAVAILABLE。
  2. 使用替代方法或属性:如果一个方法或属性被标记为NS_UNAVAILABLE,开发者应该查找替代的方法或属性来完成相同的功能。
  3. 版本兼容性:在开发过程中,应该注意目标平台的版本兼容性。某些方法或属性可能只在特定的iOS版本或操作系统版本中可用,开发者应该根据目标平台的要求来选择合适的方法或属性。

总之,调用标记为NS_UNAVAILABLE的方法时未显示错误是开发者在编译和运行代码时可能会遇到的问题。为了避免这种情况,开发者应该仔细阅读文档,使用替代方法或属性,并注意版本兼容性。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • iOS AVDemo(3):音频封装,采集编码并封装为 M4A丨音视频工程示例

    第一次调用 -appendSampleBuffer: 添加待封装数据才会创建封装器实例。 在 -_setupMuxWriter: 方法中实现。...每次当外部调用 -appendSampleBuffer: 方法送入待封装数据,其实都是先调用 -_enqueueSampleBuffer: 把数据放入两个队列中一个,以便根据情况进行后续音视频数据交织...在枚举 KFMP4MuxerStatus 中定义了封装器各种状态,对于封装器状态机管理贯穿在封装整个过程中。 7)错误回调。 在 -callBackError: 方法向外回调错误。...在 -dealloc 方法中实现。需要调用 -_reset 方法清理封装器实例、音频和视频输入源、音频和视频缓冲区。 更具体细节见上述代码及其注释。...5)在调用 -stop 停止整个流程后,如果没有出现错误,封装 M4A 文件会被存储到 muxerConfig 设置路径。

    56520

    安卓软件开发:用JetpackCompose实现NimReplyAppLogic中篇

    电子邮件详情和状态管理:跟踪邮件已读、读和星状态,使用 Jetpack Compose 更新 UI。...selectEmail():根据邮件 ID 选择并更新选中邮件。toggleStarStatus():切换邮件状态,并刷新邮件列表。markEmailAsRead():将邮件标记为已读。...四、实现邮件详情和状态管理4.1 电子邮件详情页面使用 ViewModel 实现邮件详情展示。当用户点击邮件,应用会展示该邮件详细内容以及回复线程。...通过点击按钮,调用 viewModel.markEmailAsRead() 方法更新邮件已读状态。五、实现状态管理与界面交互状态管理很重要,可以轻松实现邮件状态(如已读、星实时更新。...filteredEmails:根据用户搜索输入动态更新显示邮件列表。

    12920

    跨域资源共享(CORS)

    CORS故障会导致错误,但是出于安全原因,该错误详细信息不适用于JavaScript。所有代码都知道发生了错误。确定具体出问题唯一方法是查看浏览器控制台以获取详细信息。...Origin头和使用以Access-Control-Allow-Origin最简单方式显示访问控制协议。...默认情况下,在跨站点XMLHttpRequest或Fetch调用中,浏览器将不发送凭据。在调用XMLHttpRequest对象或Request构造函数,必须设置一个特定标志。...访问控制允许方法部分 该Access-Control-Allow-Methods头指定访问资源所允许一种或多种方法。用于响应预检请求。上面讨论了请求被预检条件。...访问控制请求方法部分 该Access-Control-Request-Method发出预检要求,让服务器知道实际请求时会怎样使用HTTP方法使用。

    3.6K50

    从POP3服务器提取电子邮件

    密码 使用实例方法检查邮箱、检索邮件和删除邮件。以下各节提供了详细信息。 或者,要防止连接超时,请调用%Net.POP3实例Ping()方法。...或者,如果已将邮件标记为要删除,但现在选择不删除它们,请调用%Net.POP3实例RollbackDeletes()方法。...还要注意是,这些示例并没有显示实际密码。...FetchMessage() 给定消息编号作为第一个参数,此方法返回(通过引用)诸如From、To和其他公共头等信息、包含所有头(包括公共头)数组以及消息内容本身 这些方法每一个都返回一个状态...请注意,如果邮件当前被标记为删除,则这些方法将返回错误状态。 示例:FetchMailbox() 下面的示例是“获取有关邮箱信息”中描述ShowMailbox示例变体。

    1.5K20

    iOS AVDemo(2):音频编码,采集 PCM 数据编码为 AAC丨音视频工程示例

    @end NS_ASSUME_NONNULL_END 上面是 KFAudioEncoder 接口设计,除了初始化方法,主要是有获取音频编码码率以及音频编码数据回调和错误回调接口,另外就是编码接口...// 因为我们每次调用 AudioConverterFillComplexBuffer 编码,是送进去一个包(packet),而对于 AAC 来讲,mFramesPerPacket 需要是 1024,...index = 0; index < encodeCount; index++) { [self encodeBuffer:p timing:timingInfo]; // 调用编码方法...回调中将待编码数据拷贝到编码器缓冲区进行编码。 3)捕捉音频编码过程中错误,抛给 KFAudioEncoder 对外错误回调接口。...在 -encodeSampleBufferInternal:、-encodeBuffer:timing: 等方法中捕捉错误,在 -callBackError: 方法向外回调。

    88730

    为应用绑定通知渠道并展示消息角

    setImportance:设置通知渠道重要性,其实NotificationChannel构造方法已经传入了重要性,所以该方法只在变更重要性时调用。...原本通知渠道提供了setShowBadge方法,可设置是否在应用图标的右上角展示小红点(此红点又称消息角),调用方法设置true之后,有读消息显示红点,无读消息则不显示红点。...然而setShowBadge方法在国产手机上并不奏效,原因有二:其一,该方法显示红点显示数量;其二,该方法迟至Android8.0之后才跟着通知渠道一起推出,众多国内厂商等来不及故而早早推出了自己红点方案...华为消息角不依赖通知推送,允许单独设置红点展示情况,主要通过内容解析器调用华为内核消息角服务,详细角标显示代码示例如下:     // 华为消息角需要事先声明两个权限:INTERNET和...下面是在小米手机上显示消息角标的代码例子:     // 小米消息角需要在发送通知时候一块调用     private static void showBadgeOfMIUI(int count,

    2.4K30

    Android开发笔记(一百六十八)为应用绑定通知渠道并展示消息角

    setImportance:设置通知渠道重要性,其实NotificationChannel构造方法已经传入了重要性,所以该方法只在变更重要性时调用。...原本通知渠道提供了setShowBadge方法,可设置是否在应用图标的右上角展示小红点(此红点又称消息角),调用方法设置true之后,有读消息显示红点,无读消息则不显示红点。...然而setShowBadge方法在国产手机上并不奏效,原因有二:其一,该方法显示红点显示数量;其二,该方法迟至Android8.0之后才跟着通知渠道一起推出,众多国内厂商等来不及故而早早推出了自己红点方案...华为消息角不依赖通知推送,允许单独设置红点展示情况,主要通过内容解析器调用华为内核消息角服务,详细角标显示代码示例如下: // 华为消息角需要事先声明两个权限:INTERNET和...下面是在小米手机上显示消息角标的代码例子: // 小米消息角需要在发送通知时候一块调用 private static void showBadgeOfMIUI(int count,

    1.8K40

    浅谈 __attribute__

    __attribute__ 是一个编译器指令,其实是 GNU C 一种机制,本质是一个编译器指令,在声明时候可以提供一些属性,在编译阶段起作用,来做多样化错误检查和高级优化。...总之,__attribute__ 起到了给编译器提供上下文作用,如果错误使用 __attribute__ 指令,因为给编译器提供了错误上下文,由此引起错误通常很难被发现。...// 系统宏定义 DEPRECATED_ATTRIBUTE 使用场景: 在组件化、SDK 时候,因为某个需求,我们升级了 API,但是需要兼容老版本,并且希望使用者调用最新 API。...如果使用了,就会编译失败,提示错误信息 常用写法: // 可以自定义描述信息 __attribute__((unavailable("已经废弃,请使用 xxxx"))) // 系统宏定义 NS_UNAVAILABLE...告诉编译器子类重写这个方法时候,必须调用[Super xxx] 常用写法: // 通用写法 __attribute__((objc_requires_super)) // 系统宏定义,其实和上面是一样

    5.9K31

    错误处理

    该条目被标记为错误错误值与该条目一起保存,然后传播。对该条目的任何后续访问都将导致引发相同错误。记录、节或 let 表达式其他条目不一定会受到影响(除非它们访问先前标记为错误条目)。...= e ] 评价以下成立错误处理表达与otherwiseclause: 必须在其他子句之前评估受保护表达式。...以下示例说明了引发错误情况下错误处理表达式: 复制 let x = try "A" in if x[HasError] then x[Error] else x[Value] /...123 in g[a] // error "bad" 在此示例中,定义g旨在处理调用f....实现错误 在开发表达式,作者可能希望省略表达式某些部分实现,但仍希望能够执行表达式。处理这种情况一种方法是为实现部分引发错误

    65420

    C++属性 - nodiscard

    在软件开发中,有时某些函数、类型或枚举返回值对程序正确性至关重要。比如,内存分配、文件处理、网络请求等操作结果都需要检查,以确保操作成功。忽视这些关键返回值可能导致捕获错误或未定义行为。...当被标记为 [[nodiscard]] 函数、类型或枚举返回值被忽略,编译器会产生警告或错误。...为确保被 [[nodiscard]] 标记返回值不被忽略,C++ 标准要求编译器在以下场景中鼓励报错或警告: 调用 [[nodiscard]] 函数返回值未被使用,且转换为 void 类型 按值形式返回标记为...[[nodiscard]] 枚举或类 显示转换或 static_cast 形式调用声明为 [[nodiscard]] 构造函数 显式类型转换或 static_cast 形式构造声明为 [[nodiscard...例如,返回一个状态或结果类可以标记为 [[nodiscard]],避免在重要场景下忽略状态信息。

    9110

    iOS_Objective-C编程规范

    错误处理需要定义常量,推荐使用错误相关类型 NSErrorDomain 和错误相关枚举宏 NS_ERROR_ENUM: extern NSErrorDomain const QQServiceErrorDomain...= NULL 4.4 【必须】点语法 建议使用点语法来访问或者修改 OC 类属性,访问其他 OC 方法首选方括号方式。 init 相关方法和 dealloc 里面不要用点语法!!!...鉴于使用异常代价较高(安装包、退堆栈带来性能开销,此外还可能引发内存泄露),条件允许,应该优先使用 NSError 对象或者返回错误码形式,但对于第三方组件代码,在使用时,应使用 @try/@catch...这样他们就可以只重写一个初始化方法(可能是几个)来保证他们子类初始化方法会被调用。这也有助于将来别人调试你,理解初始化代码工作流程。...// 禁用 无效 初始化方法 - (instancetype)init NS_UNAVAILABLE; - (instancetype)initWithCoder NS_UNAVAILABLE; -

    70220

    GetLastError错误代码

    〖114〗-目标内部文件标识不正确。   〖117〗-应用程序制作 IOCTL 调用错误。   〖118〗-验证写入切换参数值错误。   〖119〗-系统不支持请求命令。   ...〖122〗-传递到系统调用数据区太小。   〖123〗-文件名、目录名或卷标语法不正确。   〖124〗-系统调用级别错误。   〖125〗-磁盘没有卷。   ...〖153〗-DosMuxSemWait 清单错误。   〖154〗-输入超过目标文件系统长度限制   〖155〗-无法创建另一个线程。   〖156〗-接收进程已拒绝此信号。   ...〖1161〗-指出目标元素已包含媒体。   〖1162〗-指出元素不存在。   〖1163〗-指出元素是显示存储资源一部分。   ...〖1164〗-显示设备需要重新初始化,因为硬件有错误。   〖1165〗-设备显示在尝试进一步操作之前需要清除。   〖1166〗-设备显示门仍是打开状态。

    6.3K10

    Android O 行为变更官方指南

    此格式不正确,将不被未来 Android 版本所接受。”Android O 废除了此权宜方法;系统对格式错误 URI 会返回 null。...在建立隧道,系统不再将隧道 Http(s)URLConnection 中 proxy-authorization 头发送至代理。...记录捕获异常 如果某个应用安装 Thread.UncaughtExceptionHandler 移交给默认 Thread.UncaughtExceptionHandler,则当出现捕获异常...在与正确实现 TLS 协议版本协商服务器建立 HTTPS 连接,HttpsURLConnection 不再尝试回退到之前 TLS 协议版本并重试权宜方法。...与其开始播放错误应用,不如不播放任何东西。 下图汇总了新媒体按钮路由逻辑: 类加载行为 Android O 检查确保类加载器在加载新类不会违反运行时假设条件。

    1.7K20

    可靠远程代码执行(2)

    HTTP 下载中初始化内存导致信息泄露 如前所述,服务器管理员可以创建具有任意数量自定义服务器,包括自定义地图和声音。每当玩家加入具有此类自定义设置服务器,需要传输自定义设置背后文件。...为每个请求设置两个选项引起了我们兴趣:CURLOPT_HEADERFUNCTION和CURLOPT_WRITEFUNCTION. 前者允许注册为 HTTP 响应中每个 HTTP 调用回调。...以下屏幕截图显示了如何设置这些选项: [reversed3.png] 我们有兴趣了解 Valve 开发人员如何处理传入 HTTP 头以及对我们命名为 函数进行逆向工程CurlHeaderCallback...在 Windows 上,客户端只假设 Windows API 返回值是正确。这会产生相同错误,因为我们可以只发送一个Content-Length带有小响应主体任意头。...在 Windows 上,即使响应格式错误,API 也只会返回第一个头值。CS:GO 代码然后将分配缓冲区以及缓冲区中包含所有初始化内存内容(包括指针)写入磁盘。

    3.3K100

    使用 PHP Curl 扩展进行HTTP3请求优化

    尽管 HTTP/3 更改了很多传输层语义(例如从 TCP 到 UDP 转变),但请求头、请求方法、响应和状态代码 HTTP 语义。...请注意,CURL_HTTP_VERSION_3 在使用 HTTP/3 支持构建 Curl 扩展上使用将导致请求在 和 curl_setopt curl_exec 调用时返回 false 。...将 CURLOPT_HTTP_VERSION 选项设置为 CURL_HTTP_VERSION_3 ,如果 HTTP/3 内置到 Curl 扩展中,则 Curl 返回 false : $ch = curl_init...某些包含 OpenSSL 修补版本组合根本不起作用,并且在尝试执行请求出现段错误。 构建依赖 必须在系统上安装构建工具,例如 C 编译器、该 make 工具和其他必需品。...不幸是,它需要编译 Curl 扩展,这使得依赖操作系统软件包存储库更新来获取安全和错误修复更新系统具有挑战性。

    62610
    领券