thread 1: EXC_BAD_ACCESS (code=1, address = 0x70 当我在我的时候,我得到以下错误消息addCustomerViewController,或者单击保存,在代码运行结束时self.navigationController!.popViewControllerAnimated(true),或者当我单击相同时addCustomerViewController.用错误突出显示的代码行在我的AppDelegate类中,它的第一行如下所示
class AppDelegate: UIResponder, UIApplicationDelegate{
Run Code Online (Sandbox Code Playgroud)
这是我在调试区域中获得的最后一条消息.不确定它是否相关.
2015-06-17 23:03:03.744 SalesCRM[4930:1409291] CoreData: error: Failed to call designated initializer on NSManagedObject class 'Customer'
Run Code Online (Sandbox Code Playgroud)
这是保存功能.让我知道您可能需要查看的其他代码.我迷失了如何解决这个问题.
@IBAction func save(sender: AnyObject) {
let appDel:AppDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
let context:NSManagedObjectContext = appDel.managedObjectContext
if firstName.text != "" && lastName.text != "" && phoneNumber.text != ""
{
let newUser = NSEntityDescription.insertNewObjectForEntityForName("Customer", inManagedObjectContext: context) as NSManagedObject
newUser.setValue(firstName.text?.lowercaseString, forKey: "firstName")
newUser.setValue(lastName.text?.lowercaseString, forKey: "lastName")
newUser.setValue(phoneNumber.text, forKey: "phoneNumber")
newUser.setValue(email.text, …Run Code Online (Sandbox Code Playgroud) 我开发了一个 Mac OS 应用程序。同一包中有一个主窗口应用程序和一个菜单栏帮助程序应用程序。
帮助应用程序有一个名为“显示主应用程序”的菜单项。如果我单击菜单项后未启动辅助应用程序,则辅助应用程序应启动主应用程序。如果辅助应用程序隐藏在扩展坞中或其主窗口已关闭,则辅助应用程序应将主应用程序置于最前面。
我知道如何启动主应用程序。但我不知道如何实现重新激活功能。我使用了如下代码。
let apps = NSRunningApplication.runningApplications(withBundleIdentifier: "com.xxx.yyy")
if let mainApp = apps.first {
mainApp.activate(options: [ .activateIgnoringOtherApps ])
}
Run Code Online (Sandbox Code Playgroud)
当主应用程序刚刚启动并隐藏在扩展坞中时,激活方法似乎不执行任何操作。我注意到主应用程序实际上已激活,因为主菜单栏已更改为主应用程序的主菜单。但其AppDelegate类的“applicationShouldHandleReopen”方法没有被调用。所以主窗口不能放在前面。
我怎样才能让它发挥作用?
在我的appdelegate中,我想检查一下globUs.hasName.如果是的话,我希望Entry Point应用程序成为我的main故事板.如果不是,我希望Entry Point应用程序成为我的newUser故事板.如何设置应用的入口点?如果我不能,实现此功能的最有效方法是什么?
我的应用程序依赖于applicationProtectedDataDidBecomeAvailable被调用,但我注意到,如果我锁定设备并等待大约 3 分钟然后解锁,则applicationProtectedDataDidBecomeAvailable不会被调用。另外,什么时候会applicationProtectedDataDidBecomeAvailable被调用,而不是applicationWillEnterForeground因为我注意到,当它被调用时,有时这些调用的顺序是随机的
多谢你们
我有我的应用程序设置来处理通用链接。我们处理 URL 的检索,以及在此函数中给定 URL 的导航:
func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
guard NSUserActivityTypeBrowsingWeb == userActivity.activityType, let url = userActivity.webpageURL else {
return false
}
// Do navigation to correct page based on URL
return true
}
Run Code Online (Sandbox Code Playgroud)
当我们的应用程序之前在后台运行时,这对我们来说非常有效,并且点击了一个通用链接。
但是,当我完全终止应用程序并单击通用链接时,此功能似乎没有运行,因此它根本不处理通用链接,它只是将用户带到主页选项卡。
我试过抓取其中的 URL application(didFinishLaunchingWithOptions:),application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:])但似乎也没有调用它们。
有没有人对此有任何想法?
谢谢!
我对此没有明显的影响,但正处于项目的最后阶段,并试图注意任何警告。将以下行添加到 App Delegate 下时,每次在 Xcode 控制台中启动时,我都会收到来自 FB 的 3 个警告日志application(_:didFinishLaunchingWithOptions):
FBSDKCoreKit.ApplicationDelegate.shared.application(application, didFinishLaunchingWithOptions: launchOptions)
Run Code Online (Sandbox Code Playgroud)
“...FBSDKLog:在 Facebook SDK 初始化之前无法启动 FBSDKGraphRequestConnection。”
如果我当然删除此行,那么如果我尝试使用 Facebook 后处理登录,则不会完成并且登录不会发生。所以,健全性检查:我应该忽略这些警告吗?
在 iOS 和 Objective C 上工作时,我发现了UIApplicationDelegate,
applicationProtectedDataDidBecomeAvailable
Run Code Online (Sandbox Code Playgroud)
设备解锁后被多次调用。可能的原因是什么?
applicationProtectedDataDidBecomeAvailable - 在使用内容保护的设备上,受保护的文件以加密形式存储并且仅在特定时间可用,通常是在设备解锁时。此通知让您的应用知道设备现已解锁,您可以再次访问某些类型的受保护文件。
问题:
我发现有关 AppDelegate 方法的一些意外行为application(_:configurationForConnecting:options:)。
该文件指出:
UIKit 在创建新场景前不久调用此方法。
我希望每次启动应用程序时都是这种情况。
当我第一次启动我的应用程序时确实会调用该方法,但是对于所有后续启动,它不是.
复制:
我有一个非常简单的测试用例来重现:
AppDelegate如下所示:
// from Apple's sample project:
func application(_ application: UIApplication, configurationForConnecting connectingSceneSession: UISceneSession, options: UIScene.ConnectionOptions) -> UISceneConfiguration {
// Called when a new scene session is being created.
// Use this method to select a configuration to create the new scene with.
print("I was called!"). // <--- debugging statement
return UISceneConfiguration(name: "Default Configuration", sessionRole: connectingSceneSession.role) …Run Code Online (Sandbox Code Playgroud)就像标题一样,我在某些用户设备上遇到了一个非常奇怪的错误。我已经搜索过,但找不到任何与我完全相同的问题。
以下是有关此错误的更多详细信息:
我相信这是一个iOS系统错误,有人可以确认吗?如果没有,我该如何解决?谢谢!
所以我是 Swift 的新手。我认为这是一种快速发展的语言。
但是我看到的很多教程都将 AppDelegate 和 SceneDelegate 作为标准 init 文件,为什么我没有呢?为什么我似乎找不到他们的选择?
这些教程包括 2020 年 7 月的教程,所以我猜这是最近的某种更新。我应该如何处理具有不同文件类型的两种类型的应用程序?作为“老手”程序员,哪个更有优势?
谢谢大家。快乐编码。
appdelegate ×10
ios ×7
swift ×7
objective-c ×2
xcode ×2
cocoa ×1
core-data ×1
entry-point ×1
facebook ×1
lifecycle ×1
macos ×1
security ×1
startup ×1
xcode12 ×1