小编Gom*_*ius的帖子

UIKitCore崩溃[UIViewController viewDidMoveToWindow:shouldAppearOrDisappear:]仅限iOS 12

我得到了大量的崩溃报告给了Crashlytics.这只发生在iOS 12上,我不知道如何重现这一点.也许用户在WKWebView上并尝试从提示中输入密码31 SafariServices 0x21d216740 __107+[_SFAutomaticPasswordInputViewController inputViewControllerWithAutoFillContext:passwordRules:completion:]_block_invoke.29 + 104

如果有人有类似的崩溃或想法,我们非常感谢.

更新:此问题正在跟踪:https://github.com/firebase/firebase-ios-sdk/issues/2283感谢Igor

Crashed: com.apple.main-thread
0  libsystem_kernel.dylib         0x207743df8 __abort_with_payload + 8
1  libsystem_kernel.dylib         0x20773d838 abort_with_payload_wrapper_internal + 100
2  libsystem_kernel.dylib         0x20773d7d4 abort_with_payload_wrapper_internal + 34
3  libobjc.A.dylib                0x206d7d4b4 _objc_fatalv(unsigned long long, unsigned long long, char const*, char*) + 112
4  libobjc.A.dylib                0x206d7d40c __objc_error + 42
5  libobjc.A.dylib                0x206d94af0 weak_entry_insert(weak_table_t*, weak_entry_t*) + 314
6  libobjc.A.dylib                0x206d95a60 objc_initWeak + 360
7  UIKitCore                      0x23457508c -[UIViewController viewDidMoveToWindow:shouldAppearOrDisappear:] + 1628
8  UIKitCore                      0x234fcaff8 -[UIView(Internal) …
Run Code Online (Sandbox Code Playgroud)

ios ios12 safariservices

14
推荐指数
1
解决办法
2404
查看次数

如何在CloudKit中通过creationDate进行查询?

我想从CloudKit获取最后X分钟的公共/私人条目.

我尝试了这个效果,但失败了:

    let date = NSDate(timeInterval: -60.0 * 120, sinceDate: NSDate())
    let predicate = NSPredicate(format: "creationDate > %@", date)
Run Code Online (Sandbox Code Playgroud)

但这会得到我的数据,但我不确定我是在查询所有内容还是只是某种上限:

    let predicate = NSPredicate(value: true)
Run Code Online (Sandbox Code Playgroud)

我希望能够在一定的时间内查询.如果不在客户端进行创建排序逻辑,这可能吗?

这是完整的代码块:

func fetchPublicData(completion: ((records:[AnyObject]) -> Void)!)
{
    let date = NSDate(timeInterval: -60.0 * 120, sinceDate: NSDate())
    let predicate = NSPredicate(format: "creationDate > %@", date)
    let query = CKQuery(recordType: "MyDataRecordType", predicate: predicate)

    let container = CKContainer.defaultContainer()
    let publicDb = container.publicCloudDatabase

    publicDb.performQuery(query, inZoneWithID: nil,
    {
        (results, error) in

        if error != nil
        {
            self.handleError(error)
        }
        else …
Run Code Online (Sandbox Code Playgroud)

objective-c ios swift cloudkit

12
推荐指数
1
解决办法
3610
查看次数

如何在 Jenkins 声明性管道的发布阶段和 emailext 中访问 $GIT_COMMIT?

我想在构建成功/失败时发送电子邮件以及一些有用的 Git 信息,例如提交 SHA、先前成功的 SHA、提交消息等。我能够以旧的 UI 方式执行此操作,但现在我已经创建了声明性管道和现在我收到GIT_BRANCH is not supported in this context了收到的电子邮件。我正在使用 Jenkins 版本。2.89.3. 我的脚本:

pipeline {
    agent { 
        ...
    }
    stages {
        stage('Checkout') {
            steps {
                sh 'printenv'
                checkout scm: [$class: 'GitSCM', branches: [[[name: '*/development']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [url: 'https://github.com/myrepo/']]]
                sh 'git submodule foreach --recursive \'git submodule sync\''
                sh 'git submodule update --init --recursive'
            }
        }
        stage('Build') {
            steps {
               ...         
            }
        }
    }
    post {
        success {
            sh 'printenv'
            emailext body: …
Run Code Online (Sandbox Code Playgroud)

jenkins jenkins-pipeline jenkins-email-ext

10
推荐指数
1
解决办法
2万
查看次数

UIKitCore 崩溃:_UIAnalyticsGatherMultitouchAnalytics

我只在 Xcode > Window > Organizer > Crashes 选项卡中看到此崩溃,而在 Firebase Crashlytics 中没有看到。到目前为止,它似乎只发生在 iOS 13 上,并且是应用程序中最常见的 5 次崩溃之一。

也在https://feedbackassistant.apple.com提交了这个

图片

ios

8
推荐指数
1
解决办法
517
查看次数

CloudKit推送通知订阅无效

我正在尝试使用CloudKit订阅推送通知.我收到这个错误:

<CKError 0x170c5b1e0: "Unknown Item" (11/2003); server message = "could not find required field fieldID="25""
Run Code Online (Sandbox Code Playgroud)

从这段代码:

let subscription = CKSubscription(recordType: "PlayerData", predicate: NSPredicate(format: "TRUEPREDICATE"), options: CKSubscriptionOptions.FiresOnRecordCreation)
let notificationInfo = CKNotificationInfo()
notificationInfo.shouldBadge = false
subscription.notificationInfo = notificationInfo
PublicDb.saveSubscription(subscription, completionHandler: { (returnedSubscription: CKSubscription!, error: NSError!) in
     println("\(error)")
})
Run Code Online (Sandbox Code Playgroud)

但我没有一个名为"fieldID"的字段,也没有在我的整个项目中对它有任何引用.我不知道25来自哪里.如果我更改记录类型和/或NSPredicate,它仍然会发生.

我也试过设置这个,但没有

notificationInfo.shouldSendContentAvailable = true
Run Code Online (Sandbox Code Playgroud)

这曾经适合我,但现在我不能让它工作了.好像我的数据库在某个地方被破坏了.我尝试删除记录类型并重新创建但没有运气.

ios swift cloudkit

6
推荐指数
2
解决办法
1337
查看次数

GitHub 操作如果包含不适用于 env.VARIABLE 的函数

我已经使用以下方法设置了一个环境变量:

echo "::set-env name=PROJECT_TO_TEST::$(sh scripts/test.sh)"
Run Code Online (Sandbox Code Playgroud)

test.sh 只是回应“SomeString, MoreString”

我确实看到通过执行以下操作正确设置了 PROJECT_TO_TEST 变量:

echo "env.PROJECT_TO_TEST = ${{ env.PROJECT_TO_TEST }}"
Run Code Online (Sandbox Code Playgroud)

输出“env.PROJECT_TO_TEST = SomeString, MoreString”

在接下来的一个步骤中,我正在执行 if 检查以查看 PROJECT_TO_TEST 变量包含一些像这样的字符串:

- name: Conditionally Run
  if: contains('${{ env.PROJECT_TO_TEST }}', 'SomeString')
  run: |
    echo "SomeString did exist and should run"
- name: Conditionally Run
  if: contains('${{ env.PROJECT_TO_TEST }}', 'ShouldNotRun')
  run: |
    echo "ShouldNotRun"  
Run Code Online (Sandbox Code Playgroud)

在这种情况下,应该只打印“SomeString 确实存在并且应该运行”,但也会打印“ShouldNotRun”。

完整代码在这里:https : //github.com/gomfucius/github-actions/blob/master/.github/workflows/pullrequest.yml

说明问题的工作流程:https : //github.com/gomfucius/github-actions/runs/590320131

github-actions

5
推荐指数
2
解决办法
1666
查看次数

使用“优化速度”选项时,`supportsSecureCoding` 崩溃

我在创建使用 NSSecureCoding 及其子类的类时遇到问题。

class ClassA: NSObject, NSSecureCoding {
    public static var supportsSecureCoding: Bool { return true }
}

class ClassB: ClassA {
    public static var supportsSecureCoding: Bool { return true } // "Cannot override static var"
}
Run Code Online (Sandbox Code Playgroud)

我应该这样称呼,因为 NSObject.h 中的文档说,

此属性必须在所有允许安全编码的类上返回 YES。采用 NSSecureCoding 并覆盖 initWithCoder: 的类的子类也必须覆盖此方法并返回 YES。// 编写解码数据的方法时应参考安全编码指南。

目标-C:

@property (class, readonly) BOOL supportsSecureCoding;
Run Code Online (Sandbox Code Playgroud)

迅速:

public static var supportsSecureCoding: Bool { get }
Run Code Online (Sandbox Code Playgroud)

我正在使用 Xcode 10.0,在 Swift 4.0 和 Swift 4.2 上都尝试过。人们如何解决这个问题?任何帮助表示赞赏。

更新:使用 时public class var supportsSecureCoding,它会编译,但在使用Optimize for …

nssecurecoding swift

3
推荐指数
2
解决办法
1174
查看次数

有没有办法在没有代码的情况下使用autolayout缩小约束?

不使用代码,我基本上试图在这张图片中实现"期望的结果":

在此输入图像描述

我希望约束"你好!" 标签在屏幕高度较短时缩小其长度.正如您在"实际结果"中看到的那样,底部的按钮不在屏幕上.我希望图像视图具有固定的宽度和高度.

我知道我可以为约束创建IBOutlets,并通过像这样的帖子建议的代码来做(自动布局 - 使视图的高度相对于半视图高度),但我试图尽量避免使用代码.

附带问题:如果在IB中无法做到这一点,那么在代码中执行此操作的最佳方法是什么?

谢谢您的帮助!

xcode objective-c interface-builder shrink autolayout

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