You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在AppDelegate中赋值launchOptions给self报错:未找到该属性

解决方法

你遇到的问题本质是AppDelegate类里没有声明launchOptions这个属性,编译器找不到它,所以报错。下面分Objective-C和Swift两种场景给出具体解决步骤:

Objective-C 场景

  1. 打开AppDelegate.h文件,添加属性声明:
@property (nonatomic, strong) NSDictionary *launchOptions;
  1. 回到AppDelegate.m的didFinishLaunchingWithOptions方法里赋值:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // 把传入的launchOptions赋值给实例属性
    self.launchOptions = launchOptions;
    // 其他初始化代码
    return YES;
}
  1. 之后在AppDelegate的其他方法里,就能正常通过self.launchOptions访问这个值了。

Swift 场景

  1. 在AppDelegate.swift的类内部,添加属性定义:
// 声明可选类型,因为launchOptions可能为nil
var launchOptions: [UIApplication.LaunchOptionsKey: Any]?
  1. 在didFinishLaunchingWithOptions方法里完成赋值:
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
    self.launchOptions = launchOptions
    // 其他初始化代码
    return true
}
  1. 后续在其他方法中直接调用self.launchOptions即可。

额外注意

使用self.launchOptions时记得做判空处理(比如OC里用if (self.launchOptions),Swift里用if let options = self.launchOptions),避免因为nil值导致崩溃。

内容的提问来源于stack exchange,提问作者Danzeeeee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 06:28:12