iOS ipa文件重签名
最近遇到一个问题就是我们公司用自己的企业账号上的证书打包的ipa文件每过一年都需要重新重新把现在的一些ipa文件重新打包发布管理,这种做法效率其实很低下,因为有可能我们引用的三方库已经升级更新后会造成工程不可用,需要花费很大精力去进行同步升级工程代码才可以,那么我们其实有更好的方法去解决这种困境,我们可以通过对ipa文…
阅读全文 »已阅读 14 次最近遇到一个问题就是我们公司用自己的企业账号上的证书打包的ipa文件每过一年都需要重新重新把现在的一些ipa文件重新打包发布管理,这种做法效率其实很低下,因为有可能我们引用的三方库已经升级更新后会造成工程不可用,需要花费很大精力去进行同步升级工程代码才可以,那么我们其实有更好的方法去解决这种困境,我们可以通过对ipa文…
阅读全文 »已阅读 14 次let originalString = “test/test” let escapedString = originalString.addingPercentEncoding(withAllowedCharacters: .urlHostAllowed) print(escapedString!)
阅读全文 »已阅读 74 次接下来是在openUrl里处理打开的操作,会给出选定文件的本地URL func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any]) -> Bool { if url.i…
阅读全文 »已阅读 324 次import UIKit enum AlignType : NSInteger { case left = 0 case center = 1 case right = 2 } class EqualCellSpaceFlowLayout: UICollectionViewFlowLayout { //两个Cell之间…
阅读全文 »已阅读 72 次今天在写一个功能的时候用到了Dictionary 的 grouping by 这个用法,代码先贴出来 import UIKit class AlignFlowLayout: UICollectionViewFlowLayout { required init(itemSize: CGSize = CGSize.zero…
阅读全文 »已阅读 456 次今天翻原来写过的代码发现有些看不懂了,比如@escaping这货我就看不太懂了,为什么会在传入一个方法的时候会给闭包加上这这个呢? 就例如如下代码: func createViewModel(pay:@escaping (()->Void),change:@escaping (()->Void)) ->…
阅读全文 »已阅读 809 次在iOS中想在不依赖任何ViewController的情况下显示UIAlertController,在适配iOS13之前的写法是如下: public func hhShowViewController(_ animated:Bool,completion: (() -> Void)?) { let popWind…
阅读全文 »已阅读 1,712 次//MARK: – 查找顶层控制器、 /// 获取顶层控制器 根据window func getTopVC() -> (UIViewController?) { var window = UIApplication.shared.keyWindow //是否为当前显示的window if window?.wind…
阅读全文 »已阅读 372 次在我们iOS日常的开发过程中会遇到各种各样的内存泄漏问题,这个问题表面可能看起来并不严重,但实际有很大的弊端,会造成过多内存的使用不会被回收,所有今天我来总结一下我遇到过的内存泄漏的问题以及我查找的思路。 ###下面我就来总结一下常见内存泄漏出现的地方。 在使用Timer造成的内存泄漏 相信我们在做开发过程会时不时用到…
阅读全文 »已阅读 306 次最近两天在修改一个项目中出现的bug,就是有一个搜索界面的SearchBar下做了一个搜索历史的列表展示,在不是带刘海屏的手机上显示一切ok,但遗憾的是在刘海屏上搜索列表就会被遮挡一部分,当然这个搜索历史View的位置是用frame直接写的,于是我就各种试,用自动布局写了些发现问题很大到最后都没发现问题为啥会出现,于是…
阅读全文 »已阅读 380 次在使用UISearchController的过程中遇到了很多问题,踩过了很多坑,现在记录并总结一下。 1. 第一个问题就是sectionIndex和Searchbar的冲突 searchBar加到tableView的headerView上,然后为tableView添加sectionIndex,问题就出来了,因为sect…
阅读全文 »已阅读 561 次如果APP没有设计暗黑模式那么可以通过设置禁用暗黑模式 禁用方式如下: 在程序的Info.plist文件中加入: key: UIUserInterfaceStyle value: Light
阅读全文 »已阅读 622 次今天在适配iOS13的时候发现像获取或设置UITextField的PlaceHolder崩溃,造成崩溃的原因是如下这样的写法,现在被系统禁止使用了 color = [textField valueForKeyPath:@”_placeholderLabel.textColor”]; 现在正确的写法如下 UITextFi…
阅读全文 »已阅读 858 次首先我们需要准备UI界面,然后我们需要在Info.plist中添加如下配置 <key>NSLocationWhenInUseUsageDescription</key> <string>应用将在运行过程中获取位置信息</string> <key>NSLocat…
阅读全文 »已阅读 531 次func currentYear() -> String { let date = Date() let caledar = Calendar.current let year = caledar.component(.year, from: date) return “\(year)” } 我这里只写了一个获取…
阅读全文 »已阅读 422 次昨天在我们APP往AppStore上传新包的时候出现了如标题所术的警告信息,刚开始看到有点蒙,由于我的英文不太好,所以就想百度或google一下,但通过搜索没有发现什么有价值的内容于是我就又回过头来看这个log信息。如图 通过仔细看警告中的内容,发现其实已经给出了这个警告的解决方案,但由于英文不好所以不想读,但现在又来…
阅读全文 »已阅读 2,024 次最近看一个老项目发现在某些部分在运行的时候会出现内存泄漏,造成内存每打开一次界面就会增长大概10几兆,所以我就着手查了一下问题,下面对查找以及解决的过程做了一下总结。 1. 首先凭着之前遇到的问题总结出来的经验,先从类中的属性或称之为变量或者调用方法在block中的循环引用问题,例如如下代码 [_photos enum…
阅读全文 »已阅读 457 次