小编Lam*_*our的帖子

pod库Swift 4 Xcode 9的Lint错误

我正在为我的swift 4 for library创建一个pod.

我运行pod lib create IntentedLibraryName生成工作区.然后我对文件进行了必要的修改IntentedLibraryName.podspec,并将我的库swift文件移动到路径IntentedLibraryName/Classes /.

为了测试pod是否工作,我是Build并pod install从Example项目开始,一切都按预期工作.

现在,我跑了pod lib lint IntentedLibraryName.podspec --verbose然后我得到了

(1失败)===构建目标IntentedLibraryName PROJECT Pods with CONFIGURATION Release ===

检查依赖关系必须将"Swift语言版本"(SWIFT_VERSION)构建设置设置为使用Swift的目标的支持值.可以在构建设置编辑器中设置此设置.必须将"Swift语言版本"(SWIFT_VERSION)构建设置设置为使用Swift的目标支持的值.可以在构建设置编辑器中设置此设置

我做了以下希望它能解决它:

Pod project,从 Build Settings> Swift Compiler- Language> Swift Language Version从斯威夫特不明斯威夫特4.0.

我添加并提交了标签上的所有更改(即git tag 0.0.1)并使用--tags推送所有更改.(即git push -u origin dev --tags)

我再次运行linting命令,仍然是同样的问题.

我甚至尝试echo 4.0 > .swift-version保存所有提交并再次推送它.NADA

还试过s.pod_target_xcconfig = { 'SWIFT_VERSION' => '4.0' }NADA …

cocoapods xcode9

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

Fastlane Match 使用个人访问令牌和用户名连接失败

为了获取证书和配置文件,我在连接到私人存储库时遇到了一些麻烦。以下是在 circle-ci 作业/工作流中的 fastlane 通道中运行的一些代码。我想这是可能的,因为这里

username = ENV['USERNAME']
personal_github_access_token = ENV["PERSONAL_GITHUB_ACCESS_TOKEN"]
authorization_token_str = "#{username}:#{personal_github_access_token}"
basic_authorization_token = Base64.encode64(authorization_token_str)

match(
  git_basic_authorization:basic_authorization_token,
  type: "development",
  app_identifier: app_identifiers(),
  readonly: true
)
Run Code Online (Sandbox Code Playgroud)

错误

[12:08:10]: 克隆远程 git repo... [12:08:10]: 如果克隆 repo 时间太长,您可以使用clone_branch_directlymatch 中的选项。克隆到“/var/folders/1b/gl7yt7ds26vcyr1pkgld6l040000gn/T/d20191030-1122-178s7ae”......错误:未找到存储库。致命:无法从远程存储库读取。

请确保您拥有正确的访问权限并且存储库存在。[12:08:10]:退出状态:128 [12:08:10]:克隆证书存储库时出错,请确保您对要使用的存储库具有读取权限[12:08:10]:运行以下命令手动命令以确保您已正确验证:

感谢您的评论和回答。:)

fastlane fastlane-match circleci-2.0

6
推荐指数
3
解决办法
2794
查看次数

如果响应返回200以外的状态代码,请停止我的NSURLSession?在SWIFT

我正在尝试使用NSURLSession加载图像.如果响应返回200以外的状态代码,如何"停止"NSURLSession?我想弹出一个网络问题.

class ViewController: UIViewController {

    override func viewDidLoad() 
   {
        super.viewDidLoad()
        loadData()
   }

    func loadData()
  {
          self.downloadFullImageFrom("https://www.google.fr/logos/doodles/2015/holidays-2015-day-3-6399865393250304-5649050225344512-ror.jpg") { image in

            dispatch_async(dispatch_get_main_queue()) 
            {
                //DO SOMETHING WITH images IF DOWNLOAD IS OK
                //HOW CAN I KNOW IF dataTaskWithURL FAILED?
            }
        }
    }

    func downloadFullImageFrom(url:String, completion: ((image: UIImage?) -> Void)) {

        let task = NSURLSession.sharedSession().dataTaskWithURL(NSURL(string: url)!) {(data, response, error) in

            if let httpResponse = response as? NSHTTPURLResponse 
           {

                if httpResponse.statusCode == 200
                {
                    completion(image: UIImage(data: data!))
                } 
                else { return }
            }
        }
          task.resume() …
Run Code Online (Sandbox Code Playgroud)

grand-central-dispatch ios nsurlsession swift

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

想要创建一个侦听器来检测整个应用程序中的viewWillAppear调用

我想listener每当推送一个新的UIViewController时都报告一种。我可以通过从单个类中进行子类化,然后在super viewDidLoad/ viewDidAppear调用中进行侦听来实现此目的。但是我仍然必须将子类名称传递给super。

是否有其他方法可以自动检测到何时出现新视图?

上下文是我正在一个logging报告屏幕加载时间等的库中工作。我也想听应用程序中任何一次单击的按钮。

delegates objective-c ios swift

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