
iOS开发
文章平均质量分 64
sailip
Life is tough, and steps are determined.
职业:iOS开发工程师
Email: liuyongjiesail@icloud.com
个人网站: www.sailip.com
展开
-
SKAdNetwork:从0到1
一、什么是SKAdNetwork 二、种类三、归因流程四、开发者回传归因数据示例 NSAdvertisingAttributionReportEndpoint五、开发者归因回调链接的要求(针对服务器)六、SKAdNetwork的版本生效规则七、参考WWDC原创 2023-02-23 20:30:01 · 2485 阅读 · 0 评论 -
Github:fatal: Could not read from remote repository.
Github 仓库,执行 git pull 和 git push 时,报错如下:kex_exchange_identification: Connection closed by remote hostConnection closed by 20.205.xx.xx port 22fatal: Could not read from remote repository.Please make sure you have the correct access rightsand the repo原创 2022-04-24 18:23:22 · 2566 阅读 · 0 评论 -
M1 MacBook:ERROR: While executing gem ... (Gem::FilePermissionError)
一、错误sudo gem install cocoapods Password:ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permissions for the /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/gems/2.6.0 directory.二、解决curl -L http原创 2022-04-01 17:18:32 · 2214 阅读 · 0 评论 -
C++:从0到1
函数指针每个函数都占用一段连续的内存空间,函数指针就是指向函数起始地址的指针。int (*pf)(int, char); //pf就是一个函数指针pf(1,'c'); //调用方式函数指针用于可以对任意类型的数组进行排序,最后传入比较函数即可。void qsort(void *base, int enlem, unsigned int width, int (*pfCompare)(const void *, const void *));位运算& 按位与| 按位或^原创 2021-06-02 10:16:03 · 900 阅读 · 0 评论 -
面向对象:Objective-C 与 C++ 实现“多态”的原理
最近在学习 UE4(Unreal Engine)的相关知识,由于UE4引擎是使用C++实现的,因此对C++语言有了深一步的学习。我想,程序员在会某种语言的情况下,再学习其他语言时,总喜欢对比着学习,特别是同属于一类的,OC与C++同为编译型语言。C++也是一门使用C语言实现的面向对象语言。而OC的底层是C和C++。OC与C++还是有很多不同的,比如OC的方法只声明不定义,编译可以通过,且可以只定义不声明,而C++声明和定义必须成对出现,且在其他地方调用的情况下,只声明不定义编译不通过。这是因为OC底层的有原创 2021-05-31 16:20:02 · 461 阅读 · 4 评论 -
iOS开发之Unity游戏在iOS平台运行调研(踩坑)
需求在现有App上运行自研的Unity游戏方案方案一、导出WebGL运行在WKWebView上方案二、Unity与原生混合开发官方示例:将 Unity 集成到原生 iOS 应用程序中原创 2020-10-23 20:57:11 · 2890 阅读 · 2 评论 -
Mac OS终端命令
原文 目录操作命令名功能描述使用举例mkdir创建一个目录mkdir dirname rmdir删除一个目录rmdir dirname mvdir移动或重命名一个目录mvdir dir1 dir2 cd改变当前目录cd dirname pwd显示当前目录的路径名pwd ls显示当前目录的内容ls -la dircmp比较两个目录的内容转载 2017-07-18 15:59:22 · 718 阅读 · 0 评论 -
iOS开发之App审核那些事儿
引用Dedicated to the best store experience for everyoneInside Apple’s team that greenlights iPhone apps for the App Store40%拒绝率!苹果App Review 团队审核机制曝光App Store Review Guidelines数据自动化系统(机审),作为参...原创 2020-04-28 16:27:21 · 1528 阅读 · 0 评论 -
iOS组件化:podspec文件配置指南
## Be sure to run `pod lib lint MXStatService.podspec' to ensure this is a# valid spec before submitting.## Any lines starting with a # are optional, but their use is encouraged# To learn more a...原创 2020-02-26 11:41:29 · 2123 阅读 · 0 评论 -
iOS组件化:坑点
1. 当组件继承于第三方库时需修改导入方式错误引入: #import "AFHTTPSessionManager.h" 正确引入: #import <AFNetworking/AFHTTPSessionManager.h>执行如下命令时会提示 ”xxx.h“ file not foundpod lib lint xx.podspec2. 执行 pod spec lint...原创 2020-02-26 11:21:28 · 1507 阅读 · 0 评论 -
Xcode7.0网络请求&ARC、MRC程序运行
Xcode7之后网络请求默认支持https。如果需要使用http则需要配置info.plist文件info.plist文件配置如下: 第一种方式:// NSAppTransportSecurity 字典 // NSAllowsArbitraryLoads YES第二种方式:info.plist加上这一段,右键原创 2015-11-01 11:00:40 · 900 阅读 · 0 评论 -
Undefined symbols for architecture arm64: "_SCNetworkReachabilitySetCallback", referenced from:
Undefined symbols for architecture arm64: "_SCNetworkReachabilitySetCallback", referenced from: -[UMSocialNetworkReachabilityManager startMonitoring] in libUMSocial_Sdk_4.3.a(UMSocialNet原创 2015-11-21 21:31:09 · 1240 阅读 · 0 评论 -
iOS沙盒机制 、对象写入及读取
1、沙盒机制 1)获取沙盒路径 2)沙盒中有三个文件夹 (懂得如何获取其路径) Documents:存储用户数据,需要备份的信息 Library/Caches:存储缓存文件,程序专用的支持文件 Library/Preferences:存储程序的偏好设置文件 tmp:存储临时文件。比如:刚下载的图片、zi原创 2015-11-01 11:17:44 · 1013 阅读 · 1 评论 -
如何使用GitHub管理代码
通过Xcode将代码提交到github上,把仓库放在github上=======================================================》1.注册一个github账号》2.配置SSH Keys,只要配置了SSH Keys就可以和github无缝衔接》点击昵称来到个人主页》 点击主页中的设置(setting)》原创 2015-11-20 17:58:53 · 1904 阅读 · 0 评论 -
AFNetWorking 数据请求、数据上传、网络监控
使用AFNetWorking进行数据请求,以下为几种返回数据格式设定: //声明(默认):服务器返回的json数据,因为json格式比较规范,他会帮你解析成字典或数组 session.responseSerializer= [AFJSONResponseSerializerserializer]; // 声明:服务器返回的是原创 2015-11-20 17:54:54 · 1537 阅读 · 0 评论 -
*** Assertion failure in -[CLLocationManager setAllowsBackgroundLocationUpdates:], /BuildRoot/Librar
iOS项目集成百度地图的时候必须设置后台模式,而AppStore上线时,项目中没有用到后台定位,导致2.16被拒,苹果要求你勾选掉Background Modes 中的Location Updates但是当你勾选掉这个后台模式后,程序crash。crash原因如下:*** Assertion failure in -[CLLocationManager setAllowsBackgroundLocationUpdates:], /BuildRoot/Library/Caches/com.apple.xb原创 2016-06-14 11:22:41 · 7229 阅读 · 3 评论 -
iOS原生二维码扫描&libqrencode生成二维码
iOS原生二维码扫描&libqrencode生成二维码原创 2016-07-22 17:14:18 · 1361 阅读 · 0 评论 -
iOS推送、3D touch、分享等进入APP的不同跳转方式
[[AccountManager sharedInstance] changeRootViewControllerWithHome]; //改变rootviewController为主页面(我这里为tabbar的第一个页面) MyNavigationViewController *myNavi = self.window.rootViewController.childViewControllers[0]; 拿到当前controller [myNavi pushViewController:logi原创 2016-07-01 11:56:13 · 4443 阅读 · 0 评论 -
SVN代码管理遇到的坑
1、本地删除了某个文件,服务器没有删除,在你做update操作的时候,该文件会显示D,导致无法commit解决方法:找到change—》选中文件—》右击单独commit change原创 2016-07-17 00:04:35 · 1044 阅读 · 1 评论 -
This version does not support documents saved in the Xcode 8
This version does not support documents saved in the Xcode 8 format. Open this document with Xcode 8.0 or later.原创 2016-08-18 15:28:00 · 3541 阅读 · 0 评论 -
CocoPods报错:[!] The dependency `XXX` is not used in any concrete target.
CocoPods报错:[!] The dependency `XXX` is not used in any concrete target.删除Podfile.lock文件后重新pod install解决原创 2016-08-30 00:47:59 · 1660 阅读 · 0 评论 -
iOS开发CocoPods支持报错: [!] Unable to accept duplicate entry for: XXXXX (0.0.1)
iOS开发CocoPods支持报错: [!] Unable to accept duplicate entry for: XXXXX (0.0.1)原创 2016-08-30 12:21:41 · 5955 阅读 · 1 评论 -
iOS实现TextView提示文字并且输入字数限制
iOS实现TextView提示文字并且输入字数限制原创 2016-08-19 21:28:05 · 18893 阅读 · 0 评论 -
iOS开发应用程序证书配置相关(推送)
iOS开发应用程序证书配置相关---推送原创 2016-08-04 11:30:27 · 1386 阅读 · 0 评论 -
iOS开发--- CocoaLumberjack 的简单使用
iOS开发 -- CocoaLumberjack 的简单使用原创 2016-07-14 17:56:04 · 1149 阅读 · 0 评论 -
iOS开发:[!] You need to register a session first.
将我们的gitHub仓库代码配置CocoPods支持的时候执行最后一步命令:pod trunk push 工程名.podspec报错如下:[!] You need to register a session first.pod trunk register 电子邮箱 '您的姓名' --description='macbook pro'原创 2016-08-30 02:30:37 · 3937 阅读 · 0 评论 -
iOS开发百度地图SDK集成方法
1、前往百度地图—》右上方 地图开放平台,此时进入开发者平台,这里需要注册百度开发者账号2、百度地图支持多种语言的开发和集成,我们在这里选择iOS平台—》基础地图(这里有一些SDK的简介),在简介部分下载百度地图的SDK(文件中,API说明、百度地图例子、7个地图框架)3、与其他第三方一样(如友盟等),我们需要创建应用来得到Key,点击左边菜单栏中申请秘钥—》创建应用,这里需要填写原创 2015-11-20 17:09:16 · 1381 阅读 · 0 评论 -
iOS视频添加背景音乐同时保留原音
[objc] view plain copyprint?//抽取原视频的音频与需要的音乐混合 -(void)addmusic:(id)sender { [MBProgressHUDshowHUDAddedTo:self.viewanimated:YES]; AVMutableComposition *composition =[AVMut转载 2016-09-03 23:28:51 · 2239 阅读 · 0 评论 -
iOS多张图片合成一个视频
[objc] view plain copyprint?- (void)viewDidLoad { [superviewDidLoad]; //Do any additional setup after loading the view. imageArr =[[NSMutableArrayalloc]initWithObjects:转载 2016-09-03 23:32:54 · 3060 阅读 · 1 评论 -
iOS开发之三级地区选择功能实现
一行代码实现省市区三级地区选择功能原创 2016-09-03 23:36:23 · 4185 阅读 · 0 评论 -
iOS开发之Swift与OC混编实现
iOS开发之Swift与OC混编实现原创 2016-09-04 00:00:18 · 648 阅读 · 0 评论 -
iOS开发Swift语法回顾之基本的语法与数据类型
iOS开发Swift语法回顾之基本的语法与数据类型原创 2016-09-04 00:05:44 · 1304 阅读 · 0 评论 -
iOS逆向工程一:入门知识
1、iOS 软件逆向工程常用的工具class-dump软件获取app的.h文件目录逆向常用的监测工具:Reveal、tcpdump、libNotifyWatch、PonyDebuggerReveal:一款类似Xcode查看器的UI页面查看工具开发越狱代码的工具:Theos(从低维的APP看向高维的APP)反编译器工具:IDA、IDA pro(可以查看到伪代码)调试器:Xcode有源码的情况原创 2016-09-16 13:59:26 · 2418 阅读 · 0 评论 -
iOS逆向工程二:Mac工具集之class-dump的使用
1、下载完此工具后,双击打开如下图: 2、将箭头指向文件复制一份到 /usr/local/bin 文件夹下。如下图: 3、假设我们现在需要导出微信app的.h文件 先下载app的ipa 包如下图: 4、右击 5、导出后如下: 6、在这个文件中找到.app后缀的文件如下: 7、右击-》显示包内容 8、在这个包内容中找到类似下图这样的文件 9、这里我原创 2016-09-16 14:29:45 · 2236 阅读 · 0 评论 -
iOS开发之基类BaseViewController和BaseTableViewController应该做哪些事情
iOS开发之基类BaseViewController和BaseTableViewController应该做哪些事情原创 2016-09-05 10:59:35 · 9427 阅读 · 2 评论 -
iOS开发技巧之Xcode报错信息无法复制
iOS开发技巧之Xcode报错信息无法复制原创 2016-09-05 12:36:48 · 1843 阅读 · 0 评论 -
Please verify that your device’s clock is properly set, and that your signing certificate is not exp
Please verify that your device’s clock is properly set, and that your signing certificate is not expired. (0xE8008018).原创 2016-08-27 00:28:57 · 733 阅读 · 0 评论 -
iOS开发Xcode设置断点调试,但无法停在代码区
引言 前段时间无聊在研究Xcode的Navigation导航条的一些功能,手贱不知道点了啥,导致在开发过程中无论是设置局部断点还是全局断点,都直接蹦在了线程中,无法停在代码区无论是设置局部断点还是全局断点,断在内存区截图如下:解决方案:点击Navigation导航栏的Debug 》Debug Workflow 》Always Show Disassembly 将这个勾选去掉。Result:原创 2016-09-20 15:30:40 · 4592 阅读 · 0 评论 -
iOS开发之Xcode8:subsystem: com.apple.siri, category: Intents, enable_level: 1, persist_level: 1, defaul
引言 一直想成为一个吃螃蟹的人,可是没机会了,今天决然做了一个重要决定 =》更新Xcode8.0,好吧!问题果然出现了,控制台无缘无故打印一些不知名的log: subsystem: com.apple.siri, category: Intents, enable_level: 1, persist_level: 1, default_ttl: 0, info_ttl: 0, debug_原创 2016-09-21 11:09:29 · 2190 阅读 · 0 评论 -
iOS10 隐私权限设置问题(Crash)
引言 iOS10 发布以来,苹果为了用户信息安全,访问内部应用都加入了隐私权限设置,让用户来选择是否使用。苹果提供的隐私权限设置 开发中如果不设置会导致应用Crash右击Info.plist文件 》Open As 》Source Code 打开复制以下你在应用中使用的隐私权限设置(描述自己修改) <key>NSVideoSubscriberAccountUsageDescripti原创 2016-09-21 16:49:30 · 9324 阅读 · 0 评论