iOS
清雨未尽时
清雨入清晨,午时未阳依。
百望夕阳暮,如梦未尽时。
展开
-
Kingfisher withUnsafeBytes 错误处理
1.错误信息withUnsafeBytes' is deprecated: use `withUnsafeBytes<R>(_: (UnsafeRawBufferPointer) throws -> R) rethrows -> R` instead2.错误位置修改为extension String: KingfisherCompatible { }extension Kingfisher where Base == String { p...原创 2020-05-27 14:35:18 · 830 阅读 · 0 评论 -
xcode11.5 适配 iOS13以下版本的App
用xcode11.5 创建的swift 工程,用模拟器运行一切正常,真机是iOS10 的系统版本,发现运行不了,报了一堆的错这是因为现在多了一个SceneDelegate.swift,启动完成后在这里创建应用视图1.解决视图报错,SceneDelegate.swift 头部添加@available(iOS 13.0, *)@available(iOS 13.0, *)class SceneDelegate: UIResponder, UIWindowSceneDelegate {..原创 2020-05-27 00:44:58 · 1409 阅读 · 1 评论 -
xcode11.5 增加启动页
很久没设置启动页了,再次添加的时候发现大变样了,启动页使用了网上说明是xcode11.3后变动后引起的现在的版本 是xcode11.5设置方法:一.配置二.设置在工程 targets--Build Settings 搜索 Asset Catalog Launch Image Set Name 然后设置创建的启动页名字即可如下图所示。再在 targets中删除 Launch screen interface file base name 并添加 LaunchIm..原创 2020-05-27 00:34:04 · 660 阅读 · 1 评论 -
iOS设备兼容性
应用信息属性列表(Info.plist)文件包含有关应用程序配置的关键信息,必须包含在你的应用程序包。您在Xcode中创建的每个新项目都有一个默认Info.plist文件,其中包含有关项目的一些基本信息。您可以修改此文件以指定您的应用程序的其他配置详细信息。该UIRequiredDeviceCapabilities键可让您声明应用程序需要运行的硬件或特定功能。所有的应用程序都需要在他们的Inf原创 2018-01-30 09:39:36 · 2419 阅读 · 0 评论 -
【iOS开发】UIWebView 与JS事件(stringByEvaluatingJavaScriptFromString) 调用
一、场景描述1.产品需求是移动端app要调用h5页面,然后监听h5代码中的某个方法,最终执行h5中的具体代码。2 h5 页面触发某个方法,app进行相应处理二、具体代码.m文件@interface ViewController ()@property(nonatomic,strong) UIWebView *webView; -(void)testWe原创 2018-01-30 11:01:33 · 560 阅读 · 0 评论 -
iOS后台唤醒实战:微信收款到账语音提醒技术总结
iOS后台唤醒实战:微信收款到账语音提醒技术https://www.jianshu.com/p/68eed9442d2c原创 2018-02-22 10:32:55 · 2198 阅读 · 0 评论 -
iOS 调试内嵌h5
1.在js 代码中需要debug调试的位置加入 debugger;2.在页面初始化过程中 断点可能没有触发,输入 location.reload()重新加载联调设置方法 http://mp.blog.csdn.net/postedit/76230204...原创 2018-02-22 16:38:58 · 2444 阅读 · 0 评论 -
iOS编译过程的原理和应用
http://blog.csdn.net/Hello_Hwc/article/details/53557308这是看到的一篇博文,可以看看!原创 2018-03-05 14:07:13 · 178 阅读 · 0 评论 -
Lottie 使用
https://blog.csdn.net/zhuweideng/article/details/71125333https://github.com/airbnb/lottie-ioshttps://editor.lottiefiles.com/ https://airbnb.design/lottie/https://github.com/airbnb/lottie-web 将下面数据保存到...原创 2018-06-08 13:23:23 · 561 阅读 · 0 评论 -
React Native Jenkins 自动化打包
这是最近做的RN项目 jenkins 自动化打包成功实现 构建 Execute shell (脚本如下) env#/usr/bin/security default-keychain -d user -s /Users/ett/Library/Keychains/login.keychain#/usr/bin/security unlock...原创 2018-07-18 18:30:09 · 3217 阅读 · 0 评论 -
NSMutableArray使用中忽视的问题
导语: NSMutableArray提供的API能解决绝大部分的需求,但是在实际iOS开发中,在某些场景下,需要考虑线程安全 或 弱对象引用 或 删除元素这三个问题。一、线程安全的NSMutableArrayNSMutableArray本身是线程不安全的。简单来说,线程安全就是多个线程访问同一段代码,程序不会异常、不Crash。而编写线程安全的代码主要依靠线程同步。1、不使用ato原创 2018-01-29 15:42:54 · 4325 阅读 · 0 评论 -
CFURLCreateStringByAddingPercentEscapes
在 iOS 程序访问 HTTP 资源时需要对 URL 进行 Encode,比如像拼出来的 http://unmi.cc?p1=%+&sd f&p2=中文,其中的中文、特殊符号&%和空格都必须进行转译才能正确访问。现在以"?!@#$^&%*+,:;='\"`<>()[]{}/\\| "字符串为例子,用stringByAddingPercentEncodin...原创 2018-02-09 16:03:35 · 2810 阅读 · 0 评论 -
GCD中的dispatch_barrier_async函数的使用(栅栏函数)
一、什么是dispatch_barrier_async函数毫无疑问,dispatch_barrier_async函数的作用与barrier的意思相同,在进程管理中起到一个栅栏的作用,它等待所有位于barrier函数之前的操作执行完毕后执行,并且在barrier函数执行之后,barrier函数之后的操作才会得到执行,该函数需要同dispatch_queue_create函数生成的concurre原创 2018-01-29 14:25:21 · 477 阅读 · 0 评论 -
iOS强制横竖屏
因为公司项目要兼顾老版本的原因,有的需要横屏显示有的需要竖屏显示,这就带来很麻烦的事了,测试了几种方法,终于搞定,直接铺代码!一、UINavigationController 设置- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation{原创 2017-11-07 14:12:15 · 1108 阅读 · 0 评论 -
shell实现把xcode打包的.app文件转换成.ipa文件
一、shell 脚本文件#!/bin/bashappName="ettNextGen"rm -rf ${appName}mkdir ${appName}mkdir ${appName}/Payloadcp -r ${appName}.app ${appName}/Payload/ettNextGen.appcp Icon.png ${appName}/iTune原创 2017-12-27 14:09:55 · 750 阅读 · 0 评论 -
移动应用抓包调试利器Charles
文章链接 :https://www.jianshu.com/p/68684780c1b0转载 2018-01-30 17:39:02 · 125 阅读 · 0 评论 -
【iOS开发】检测设备锁屏
#define NotificationLock CFSTR("com.apple.springboard.lockcomplete")#define NotificationChange CFSTR("com.apple.springboard.lockstate")static void screenLockStateChanged(CFNotificationCenter原创 2018-01-31 11:30:55 · 356 阅读 · 0 评论 -
【iOS开发】配置忽略文件.gitignore 文件
http://blog.csdn.net/Hanrovey/article/details/74942756转载 2018-01-31 11:37:03 · 593 阅读 · 0 评论 -
手动解析CrashLog 方法
解决崩溃问题是移动应用开发者最日常的工作之一。如果是开发过程中遇到的崩溃,可以根据重现步骤调试,但线上版本就无能为力了。好在目前已经有很多不错的第三方CrashLog搜集平台(如友盟、Crashlytics等)为我们做好了解析工作,甚至在Xcode9里苹果也跟进了解析线上版本崩溃日志的功能,为开发者减轻了不少负担。尽管通常已经不需要我们手工处理CrashLog,了解CrashLog的还原原理和方法原创 2018-01-31 15:45:01 · 709 阅读 · 0 评论 -
.dSYM文件的生成
符号表文件.dSYM实际上是从Mach-O文件中抽取调试信息而得到的文件目录,实际用于保存调试信息的问价是DWARF,其出身可以从苹果员工的文章《Apple’s “Lazy” DWARF Scheme》了解一二。1、Xcode自动生成Xcode会在编译工程或者归档时自动为我们生成.dSYM文件,当然我们也可以通过更改Xcode的若干项Build Settings来阻止它原创 2018-01-31 13:42:45 · 3269 阅读 · 0 评论 -
ios Runtime相关文章
关于+(void)load和+(void)initialize可当做普通类方法(Class Method)调用的.《NSObject的load和initialize方法!》和《Objective C类方法load和initialize的区别》《OC最实用的runtime总结,面试、工作你看我就足够了!》《Objective-C的方法替换》转载 2018-01-17 13:32:40 · 149 阅读 · 0 评论 -
iOS小常识 数组求和、最大,最小、平均值
-(void)testSome{ NSArray *array = [NSArray arrayWithObjects:@"2.0", @"2.3", @"3.0", @"4.0", @"10", nil]; CGFloat sum = [[array valueForKeyPath:@"@sum.floatValue"] floatValue]; CGFloat原创 2018-01-18 10:54:00 · 353 阅读 · 0 评论 -
盘点在 GitHub 上最受欢迎的项目
转自 : http://geek.csdn.net/news/detail/228374技术文章Android在 GitHub 上最受欢迎的大多是库或框架我们发现,在 GitHub 上最受欢迎的项目中有 60% 是库或框架。在 2017 年一月份,我们手动地对 5000 个在 GitHub 上打星最多的开源项目进行了分类。AOP 技术在网易新闻中的应用网易新闻 Android 客户端的热更新技术使转载 2018-01-18 10:59:38 · 902 阅读 · 0 评论 -
iOS 应用展示广告动画
不少iOS应用启动时都添加了类似动画的视频广告,今天做了一个小demo,简洁易用!一、资源 广告视频采用mp4格式 采用AVFoundition框架 #import 二、代码实现 1.创建动画功能 @property (nonatomic, strong) AVPlayer * player; @property (nonatom原创 2017-11-06 10:26:18 · 485 阅读 · 0 评论