kysonyangs

Stay Hungry, Stay Foolish


  • 首页

  • 标签

  • 分类

  • 归档

  • 关于

  • 搜索

Github工具

发表于 2020-05-26 | 更新于 2020-06-08 | 阅读次数:

收藏的几个提高 GitHub 颜值和使用效率的浏览器插件

1.Octotree

平常在 GitHub 上都会有直接浏览代码的需求,如果有的项目层级比较多,浏览代码就很不方便,每次点击一个项目文件后,整个项目列表就会隐藏,想看其他文件只能会退到后再次进入,这就很蛋疼。

Octotree 插件就很好的解决了上面的问题,当安装好这个插件后,浏览 GitHub 上某个项目的代码时,左侧会有个按钮,点击之后会出现一个菜单,展示当前项目的目录结构,就可以快速浏览整个项目的文件了。

阅读全文 »

CocoaPods问题

发表于 2020-05-05 | 更新于 2020-06-08 | 阅读次数:

CDN: trunk URL couldn’t be downloaded:

由于 CocoaPods 1.8 将 CDN 切换为默认的 spec repo 源,并附带一些增强功能!CDN 支持最初是在 1.7 版本中引入的,最终在 1.7.2 中完成。 它旨在大大加快初始设置和依赖性分析。但是无法连接外网的原因,所以 pod install/update 一直报错.

按照官方文档 podfile 文件中添加 source 源:

1
source 'https://github.com/CocoaPods/Specs.git'

删除 trunk 源

1
pod repo remove trunk
阅读全文 »

项目中查找UIWebView使用

发表于 2020-03-20 | 更新于 2020-07-13 | 阅读次数:

Apple已弃用 UIWebView 并且 UIWebView 从 2020年4月 开始不接受新应用,从 2020年UIWebView 12月开始不接受应用更新。如果应用使用UIWebView,则应将其替换为WKWebView。

UIWebView从应用程序中删除很容易,但是如果使用了一些第三方库,它们也可能包含UIWebView。需要找到所有这些文件并对其进行更新(如果有),或者进行替换。这个过程并不简单。

如果第三方库用作代码(例如通过)Cocoapods,则可以在其来源中进行文本搜索UIWebView。

1
grep -r 'UIWebView' .

如果第三方库是 .framework 不带源文件的文件,则有另一种检查方法UIWebView。

可以使用 nm 来获取可执行文件的符号表中 .framework

1
nm AWSDK.framework/AWSDK | grep -i UIWebView

新建项目删除SceneDelegate

发表于 2020-01-03 | 更新于 2020-06-10 | 阅读次数:

因为Xcode11之后新创建的工程会多出两个文件 SceneDelegate ,所以如果需要使用旧版的话需要自己增删一些文件/代码。

  1. 删除 SceneDelegate.h/.m/.swift 文件
  2. Info.plist 文件 删除 Application Scene Manifest
  3. AppDelegate 里面删除 UISceneSession lifecycle 下的代码
  4. 添加 @property (strong, nonatomic) UIWindow *window;
  5. 不用sb的话,AppDelegate 添加创建window的代码.

load

发表于 2020-01-03 | 更新于 2020-06-26 | 阅读次数:

如何快速列出App的所有 +load 方法

控制台输入

1
br s -r "\+\[.+load\]$"

然后输入

1
br list

fastlane

发表于 2019-10-05 | 更新于 2020-06-08 | 阅读次数:

fastlane

  • 用于配置 iOS 和 Android 的持续集成的神器
  • Fastlane 是一套工具,帮助你简化和自动化 App 发布或部署的过程,将之变成一条平直的工作流
  • Fastlane 是用 Ruby 语言编写的一套自动化工具集和框架,每一个工具实际都对应一个 Ruby 脚本,用来执行某一个特定的任务
  • Fastlane 核心框架则允许使用者通过类似配置文件的形式,将不同的工具有机而灵活的结合在一起,从而形成一个个完整的自动化流程
  • Fastlane 是一个 ruby 脚本集合,它可以按照我们指定的路线,在指定位置执行我们所要执行的操作。这里我们称这样的路线为「航道(lane)」,这样的操作称为 Action
  • 到目前为止,Fastlane 的工具集大约包含170多个小工具,基本上涵盖了打包,签名,测试,部署,发布,库管理等等移动开发中涉及到的内容, 工具的描述和使用可参考: Action官方文档和Github源码
  • 如果这些工具仍然没有符合你需求的,没有关系,得益于 Fastlane 本身强大的 Action 和 Plugin 机制,如果你恰好懂一些 Ruby 开发的话,可以很轻易的编写出自己想要的工具
阅读全文 »

Realm 使用

发表于 2019-10-03 | 更新于 2020-06-08 | 阅读次数:

Realm

  • Realm 是由美国YCombinator孵化的创业团队历时几年打造,第一个专门针对移动平台设计的数据库
  • Realm 是一个跨平台的移动数据库引擎,目前支持 iOS、Android平台,同时支持 Objective-C、Swift、Java、React Native、Xamarin 等多种编程语言
  • Realm 并不是对 SQLite 或者 CoreData 的简单封装, 是由核心数据引擎 C++ 打造,是拥有独立的数据库存储引擎,可以方便、高效的完成数据库的各种操作
阅读全文 »

R.Swift使用

发表于 2019-08-12 | 更新于 2020-05-16 | 阅读次数:

R.Swift 高效引用资源文件

  • R.swift 介绍
  • R.swift 安装配置
  • R.swift 使用

R.swift 介绍

  • R.Swift 是一款基于 Swift 平台,针对 iOS 以及 tvOS 开发的资源引用框架
  • 避免使用字符串来构造某些资源实例
  • R.Swift 能够使用类似语法 R.资源类型.资源名称 来对某资源进行引用构建
  • R.Swift 有着动态生成代码的机制, 它具有以下优点:
    • 代码自动补全:就像输入其他的代码一样,R.Swift 支持 IDE 的代码自动补全
    • 自动检测: 可以自动检测代码是否存在问题, 当我们的资源文件名修改的时候, 这是就会提示资源引用错误
阅读全文 »

XCGLogger 使用

发表于 2019-08-12 | 更新于 2020-05-16 | 阅读次数:
  • XCGLogger的介绍
  • XCGLogger的安装与配置
  • 基本用法
    • XCGLogger初始化
    • 日志输出
    • 运行效果
  • 更高级的初始化方法
  • 过滤日志信息
    • 按文件名过滤
    • 按标签过滤
  • 选择性的执行代码
  • 日期格式化
  • 自动切换配置
  • 在后台进行日志处理
    • 下面两种方法都是实现将日志文件输出放在后台线程中进行:
    • 也可以通过build flags来实现程序在调试、生产自动使用不同线程
  • 实现日志文件的增量记录
  • 实现日志文件的转储

XCGLogger的介绍

  • XCGLogger 是一个 debug 日志框架,可用于 Swift 项目中
  • 使用 XCGLogger ,除了可以将日志详细信息输出到控制器台外,还可以输出到指定的文件中去
  • 虽然使用起来同 NSLog() 或 print() 差不多,但 XCGLogger 会附带更多的额外信息,比如:日期、函数名、文件名和行号
阅读全文 »

SwiftLint 规则收录

发表于 2019-08-11 | 更新于 2020-05-16 | 阅读次数:

规则目录,按字母排序排列

anyobject_protocol

对纯类协议使用 AnyObject 而不是 class

识别码 默认是否启用 是否支持自动更正 类型
anyobject_protocol 未启用 yes lint

示例

1
2
3
4
5
6
7
8
9
10
// 推荐
protocol SomeProtocol {}
protocol SomeClassOnlyProtocol: AnyObject {}
protocol SomeClassOnlyProtocol: AnyObject, SomeInheritedProtocol {}
@objc protocol SomeClassOnlyProtocol: AnyObject, SomeInheritedProtocol {}

// 不推荐,触发警告
protocol SomeClassOnlyProtocol: class {}
protocol SomeClassOnlyProtocol: class, SomeInheritedProtocol {}
@objc protocol SomeClassOnlyProtocol: class, SomeInheritedProtocol {}
阅读全文 »
12…6

kysonyangs

kysonyangs个人站,备忘

54 日志
13 标签
GitHub
© 2015 — 2020 kysonyangs
由 Hexo 强力驱动 v3.7.1
|
主题 — NexT.Mist v6.3.0