小编Bob*_*Bob的帖子

SwiftUI - 内存泄漏

环境

- 卡特琳娜 10.15.7
- Xcode 12.0
- Swift 5.0

简要说明

  • 问题
  • `AppDelegate` 内存泄漏。
  • 目标
  • 修复它们并避免再次发生。
  • 导致问题的原因可能是什么,我应该在哪里查看或调查时间?

几个月来,我一直在使用 SwiftUI 开发一个应用程序,并创建了我想要的测试版的大部分功能。
现在我可以从仪器工具中看到内存泄漏,屏幕截图如下。

在此处输入图片说明

它指向类的第一行,AppDelegate并没有告诉我们是什么导致了问题。随着我们使用该应用程序,泄漏检测的数量会增加。

如果您需要,我很乐意提供更多信息。
谢谢你。


代码

AppDelegate.swift
import UIKit
import FacebookCore
import FBSDKCoreKit
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        // Override point for customization after application launch.
        ApplicationDelegate.shared.application( application, didFinishLaunchingWithOptions: launchOptions )
        return true
    }
    
    func application( _ app:UIApplication, open url:URL, options: [UIApplication.OpenURLOptionsKey :Any] = [:] ) …
Run Code Online (Sandbox Code Playgroud)

xcode memory-leaks ios swift swiftui

5
推荐指数
0
解决办法
193
查看次数

Xcode12.4 无法为 pod 目标合并 user_target_xcconfig

我一直在尝试更新 Pod,但是,每次运行pod update.

在此处输入图片说明

这里分别是项目和 Pod 的排除架构。

在此处输入图片说明

在此处输入图片说明

我试过的

  • 将此代码段添加到 Podfile 的顶部
post_install do |installer|
  installer.pods_project.build_configurations.each do |config|
    config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
  end
end
Run Code Online (Sandbox Code Playgroud)
  • 删除 Podfile.lock 和 Pods 目录并运行 pod install

  • 除了添加此代码段之外,几乎都遵循了一点,因为我没有.podspec文件。

s.pod_target_xcconfig = { 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64' }
s.user_target_xcconfig = { 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64' }
Run Code Online (Sandbox Code Playgroud)

如果您有建议和提示,那就太好了。

谢谢。

[更新] 2021 年 2 月 23 日(太平洋标准时间)

这个我还没弄明白,有没有人能帮我解决一下?

我另外做的事情

  • 将此代码段添加到顶部 Podfile。
post_install do |installer|
  installer.pods_project.build_configurations.each do |config|
    config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
  end

  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings["ONLY_ACTIVE_ARCH"] = …
Run Code Online (Sandbox Code Playgroud)

sdk xcode admob cocoapods swift

5
推荐指数
1
解决办法
1990
查看次数

标签 统计

swift ×2

xcode ×2

admob ×1

cocoapods ×1

ios ×1

memory-leaks ×1

sdk ×1

swiftui ×1