iOS
文章平均质量分 59
水麒麟灬
把分享当做自己的仓库。
展开
-
【APNS】使用apns auth key测试推送, BadDeviceToken 错误问题排查
原因:setBatteryMonitoringEnabled: crash问题解决 (setBatteryMonitoringEnabled: are not thread-safe);要保证每次对batteryLevelDidChange原创 2021-09-13 17:53:22 · 1913 阅读 · 0 评论 -
iOS静态库和动态库
在其它大部分平台上,动态库都可以用于不同应用间共享, 共享可执行文件,这就大大节省了内存。iOS平台 在 iOS8 之前,苹果不允许第三方框架使用动态方式加载,从 iOS8 开始允许开发者有条件地创建和使用动态框架,这种框架叫做 Cocoa Touch Framework。虽然同样是动态框架,但是和系统 framework 不同,app 中使用 Cocoa Touch Framework 制作的动态库 在打包和提交 app 时会被放到 app main bundle 的根目录 中,运行在沙盒里,而不是系统原创 2021-03-16 16:58:02 · 505 阅读 · 0 评论 -
ERROR ITMS-90171: “Invalid Bundle Structure: 上传appStore报错记录
【问题】上传AppStore 报错:ERROR ITMS-90171: "Invalid Bundle StructureApp Store Connect Operation ErrorERROR ITMS-90171: "Invalid Bundle Structure - The binary file 'XXX.app/XXLocationKit' is not permitted. Your app can’t contain standalone executables or lib...原创 2020-12-17 14:54:05 · 1949 阅读 · 0 评论 -
记录一个iOS14.1系统CoreTelephony 框架的Crash问题。待后续更新排查进度
Thread 49 name: Thread 49 Crashed: 0 libobjc.A.dylib _objc_opt_class (in libobjc.A.dylib) 24 1 CoreTelephony -[CTRadioFrequencyFrontEndScanData encodeWithCoder:] (in CoreTelephony) 1028 2 CoreTelephony -[CoreTelephonyClient(PNR) getPNRContext:complet.原创 2020-11-14 10:50:47 · 510 阅读 · 2 评论 -
Xcode 12 兼容问题修复:library not found for -l
Xcode 12 兼容问题修复最近因为一个项目需要获取idfa,而iOS 14推出后不能像以前一样获取idfa了,因此升级了Xcode 12,果不其然,又遇到了一些糟心的问题,下面列举一下踩坑之路。Xcode 12 模拟器编译报错问题:升级后打开之前的项目在模拟器上运行不起来,报一下错误:building for iOS Simulator, but linking in object file built for iOS, xxxx for architecture arm64复制代码原创 2020-10-27 21:41:24 · 5601 阅读 · 4 评论 -
iPAD 上 [UIPopoverPresentationController presentationTransitionWillBegin] crash
具体crash日志见上图,原因 :正在使用 UIAlertController 显示您的共享按钮,而不包含 UIPopoverPresentationController 。当您的应用程序在iPad上运行时,您必须使用 UIPopoverPresentationController 。UIPopoverPresentationController上的Apple文档。解决方案: - (IBAction)myButton: )sender { UIAlertController * sha...原创 2020-09-28 20:33:42 · 512 阅读 · 0 评论 -
TestFlight 此beta版本目前不接受任何新测试员
问题描述自从TestFlight允许通过链接直接加入测试以后,极大地方便了beta测试的过程。创建公开链接,然后发给测试组。点击打开遇到下面这种情况:如果用TestFlight打开,则是:这是怎么回事?原因没有设置测试人数 没有发送邀请 改动设置以后,苹果服务器有延迟解决 添加测试人数 发送邀请(这里借用网上截图一张~) 【重要】耐心等待几分钟以后再次尝试,应该可以了 终于搞定。注意:如果测试人员从TestFlight安装beta版本,.原创 2020-05-27 16:12:45 · 136014 阅读 · 8 评论 -
crash _mach_msg_trap
我们经常会遇到APP闪退和崩溃的问题,那么我们应该通过什么变量去监听APP的异常呢?如何在程序崩溃时,保证程序不闪退,并给用户弹出一个提示框呢? 这是本文将要讲述的内容。先介绍2个概念,Mach异常和Signal信号,如果想要监听异常其实就是去监听Mach异常和Signal信号。其实系统已经给我们提供了一个方法去监听程序产生的异常,通过NSSetUncaughtExcept...原创 2019-11-20 16:40:12 · 1424 阅读 · 0 评论 -
IOS中获取各种文件的目录路径的方法
## 标题 ##IOS中获取各种文件的目录路径的方法iphone沙箱模型的有四个文件夹,分别是什么,永久数据存储一般放在什么位置,得到模拟器的路径的简单方式是什么.documents,tmp,app,Library。(NSHomeDirectory()),手动保存的文件在documents文件里Nsuserdefaults保存的文件在tmp文件夹里Documents 目录:您应该将所有de应用程序转载 2015-04-05 13:11:10 · 557 阅读 · 0 评论 -
NSInvocation的使用
NSInvocation 简介原创 2015-04-12 17:23:57 · 416 阅读 · 0 评论 -
xcode gdb/lldb调试命令
常见错误:lldb error: property not found on object of type的解决场景描述: 断点位置:CGRect frame = view.frame; 当我在控制台:使用lldb命令会出现这么几种情况:1,我输入:po frame可以正常得到对象(lldb) po frame(origin = (x = 0, y = 0), size = (width =原创 2015-04-23 22:30:45 · 3681 阅读 · 0 评论 -
UITextField ,UITextView 输入长度的限制
UITextField方法一:UITextFieldDelegate(Tip:中文联想输入状态有问题)- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string; // return NO to not ch原创 2015-04-16 11:02:11 · 1290 阅读 · 0 评论 -
xcode联调设备出现“ ineligible Device”解决
出现这个问题有这么几种情况,请对应解决确定程序最低支持iOS版本 <=你的设备版本,你可以在”Build Settings” 中查找“iOS Deployment Target”选项进行修改重启xcode,重启iPhone,重启mac确保你的xcode是最新版本,且支持你的设备版本。如果你是xcode6.3(当前最新),试着进行这样的操作:Product > Destination>“你的设原创 2015-04-15 17:03:12 · 2095 阅读 · 0 评论 -
iOS开发中NSURLRequest cookie的操作
最近项目中用到了webView加载服务器返回的链接,因为没有cookie而发生错误的情况。发现项目组小弟对cookie不是很了解,特地在这边文章中对cookiede常用的操作进行一个小的总结。其实当你在访问一个网站的时候,NSURLRequest会主动帮你记下来你访问的站点设置的cookie,而求在你下次访问的时候,NSURlRequest会拿着你的cookie继续请求.下面是对cookie集中常用原创 2015-04-21 22:32:25 · 4222 阅读 · 0 评论 -
得到UIWebView内视频播放器弹出和关闭的通知
转载自: http://iloss.me/post/kai-fa/2014-09-18-uiwebview-video-fullscreen场景是这样的在UIWebview里面有一个视频,点击之后会弹出全屏的系统的视频播放器,这时候你可能需要在全屏的时候,或者在用户看完视频的时候需要做一些事情。那首先我们想到的是可以得到一个通知,是的,的确我们可以得到通知,通过下面转载 2015-04-05 12:39:01 · 1192 阅读 · 0 评论 -
解决UINavigationBar 的leftBarButtonItem点击范围过大问题
最近可爱的测试MM帮忙发下一个问题,导航栏leftBarButtonItem 自定义一个Button的时候,按钮的实际点击范围会过大。虽然我输出按钮的frame 是正常大小。于是上网查了下找到一个解决办法,记录下:**其实就是将button 添加到一个一样大小的view上UIImage *backImg = [UIImage imageNamed:imageName]; UIButton *原创 2015-04-15 11:39:41 · 3571 阅读 · 3 评论 -
Xcode基本操作:快捷键、布局、调试等
转一篇很详细的介绍xcode的文章:原文地址:http://blog.csdn.net/phunxm/article/details/170443371.IDE概览Gutter & Ribbon焦点列:灰色深度与代码嵌套深度相关,鼠标悬停可突出显示右侧相应代码块,鼠标单击可折叠右侧相应代码块(Code Folding)。转载 2015-04-30 16:12:03 · 3746 阅读 · 0 评论 -
UIWebView(二):Javascript alert 时title的改变
js alert UIWebView原创 2015-05-07 16:14:46 · 2520 阅读 · 0 评论 -
UIWebView(一):加载html
UIWebView 加载html 分为以下三种情况:1,加载网络html:NSURL *url = [NSURL URLWithString:@"http://localhost:8080/jmDemo/index.html"];NSURLRequest *request = [NSURLRequest requestWithURL:url];[_webView loadRequest:requ原创 2015-05-07 16:05:03 · 784 阅读 · 0 评论 -
iOS开发 常用第三方开源框架
iOS开发-常用第三方开源框架介绍(你了解的ios只是冰山一角)2015-04-05 15:25 2482人阅读 评论(1) 收藏 举报开源框架图像:1.图片浏览控件MWPhotoBrowser 实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网络下载图片并进行缓存。可对图片进行缩放等操作。转载 2015-05-26 16:57:32 · 3478 阅读 · 0 评论 -
Core Animation研究系列 : CATransform3D
换换函数:CATransform3D CATransform3DMakeTranslation (CGFloat tx, CGFloat ty, CGFloat tz)tx:X轴偏移位置,往下为正数。ty:Y轴偏移位置,往右为正数。tz:Z轴偏移位置,往外为正数。例:如果有2个图层,一个是绿色的,一个是红色的。先加载绿色,后加载红色。tx转载 2015-06-17 22:26:05 · 499 阅读 · 0 评论 -
Core Animation研究系列 : CATransform3D 矩阵变换之立方体旋转实现细节
第一部分、前几天做动画,使用到了CATransform3D ,由于没有学过计算机图形学,矩阵中m11--m44的各个含义都不清楚,经过几天研究总结如下:(供和我一样的菜鸟学习)struct CATransform3D{CGFloat m11(x缩放), m12(y切变), m13(), m14();CGFloat m21(x切变),转载 2015-06-18 16:55:42 · 766 阅读 · 0 评论 -
Core Animation研究系列 : CALayer中anchorPoint和position的用法
引言相信初接触到CALayer的人都会遇到以下几个问题: 为什么修改anchorPoint会移动layer的位置? CALayer的position点是哪一点呢? anchorPoint与position有什么关系?我也迷惑过,找过网上的教程,大部分都是复制粘贴的,有些是翻译的文章但很有问题,看得似懂非懂,还是自己写代码彻底弄懂了,做点笔记吧。每一个UIVie转载 2015-06-18 16:17:49 · 452 阅读 · 0 评论 -
Core Animation研究系列 : CGAffineTransformMake(a,b,c,d,tx,ty) 矩阵运算的原理
简记:CGAffineTransformMake(a,b,c,d,tx,ty) ad缩放bc旋转tx,ty位移,基础的2D矩阵 公式 x=ax+cy+tx y=bx+dy+ty 1.矩阵的基本知识:struct CGAffineTransform{ CGFloat a, b, c, d; CGFloat t转载 2015-06-18 10:39:59 · 694 阅读 · 0 评论 -
移动App设计之分层架构+MVC
感谢Kallen的分享!场景分析:我们知道,一个移动设备的应用大多与网络有关,也就是说,我在移动设备上看到的数据,一般都是从Server上”拉“过来,显示在我们的移动设备(ios androiud、wpohone等)上。那我们就这个”拉“的过程分析,拉什么样的数据?去哪里拉?拉过来的数据怎么处理?用编程(开发)的思维看,就是定义什么实体(业务实体)、发送请求、解析数据。当然这也只是大体的过程。但从软转载 2015-05-22 09:21:04 · 908 阅读 · 0 评论 -
iOS Socket使用大全
Socket使用大全第一部分、概念的理解1、什么是Socket?Socket又称之为“套接字”,是系统提供的用于网络通信的方法。它的实质并不是一种协议,没有规定计算机应当怎么样传递消息,只是给程序员提供了一个发送消息的接口,程序员使用这个接口提供的方法,发送与接收消息。Socket描述了一个IP、端口对。它简化了程序员的操作,知道对方的IP以及PORT就可以给对方发转载 2015-05-22 15:18:53 · 2160 阅读 · 0 评论 -
UINavigationBar 那些事
一,适配iOS7之前和之后导航栏20像素升级iOS7 以后对于UINavigationBar 的操作发生了一些变化,尤其涉及到导航栏20像素的问题。以下是常用的解决方案: 1、info.plist View controller-based status bar appearance项设为YES 2、 在viewDidload 方法中实现如下操作 if (DYY_APP_IOS_VERSI原创 2015-04-30 17:16:51 · 506 阅读 · 0 评论 -
iOS 实现后台运行
http://www.cocoachina.com/bbs/read.php?tid=149564文一 我从苹果文档中得知,一般的应用在进入后台的时候可以获取一定时间来运行相关任务,也就是说可以在后台运行一小段时间。 还有三种类型的可以运行在后以, 1.音乐 2.location 3.voip 文二 在IOS后台执行是本文要介绍的内容,转载 2015-06-03 22:00:13 · 1556 阅读 · 0 评论 -
对Objective-C中Block的追探
转自biosli的博客: 最近看了很多block相关的文章,都在说block怎么用,写的都很精彩。blogs:Block编程值得注意的那些事儿 (使用相关) iOS中block实现的探究(内部结构分析) 还有绪斌同学共享的(内部结构分析) 又看了一本关于这方面的书:Pro Multithreading and Memo转载 2015-05-19 10:35:30 · 439 阅读 · 0 评论 -
presentviewcontroller 动画
视图切换,没有NavigationController的情况下,一般会使用presentViewController来切换视图并携带切换时的动画,其中切换方法如下:– presentViewController:animated:completion: 弹出,出现一个新视图 可以带动画效果,完成后可以做相应的执行函数经常为nil– dismissViewControllerAn原创 2015-06-03 21:58:19 · 1468 阅读 · 0 评论 -
CocoaPods详解之----使用篇
作者:wangzz原文地址:http://blog.csdn.net/wzzvictory/article/details/18737437转载请注明出处如果觉得文章对你有所帮助,请通过留言或关注微信公众帐号wangzzstrive来支持我,谢谢!一、什么是CocoaPods1、为什么需要CocoaPods在进行iOS开发的时候,总免不了转载 2015-06-25 12:20:15 · 436 阅读 · 0 评论 -
CocoaPods安装和使用
CocoaPods安装和使用CocoaPods是iOS最常用的第三方类库管理工具,绝大部分有名的开源类库都支持CocoaPods。CocoaPods是用Ruby实现的,要想使用它首先需要有Ruby的环境。幸运的是OS X系统默认已经可以运行Ruby了,因此我们只需执行以下命令:sudo gem install cocoapods安装成功后,接着执行命令:转载 2015-06-25 10:55:11 · 457 阅读 · 0 评论 -
iOS开发中KVO & KVC的使用
转自:Regrecall blogger Key Value CodingKey Value Coding是cocoa的一个标准组成部分,它能让我们可以通过name(key)的方式访问property, 不必调用明确的property accssor, 如我们有个property叫做foo, 我们可以foo直接访问它,同样我们也可以用KVC来完成[Object valueF转载 2015-06-25 11:07:27 · 605 阅读 · 0 评论 -
iOS 工作备注
1。 AFNetWorking可以完美替换 ASIHttpRequest, 并且使用起来超级简单。2。 ATPagingView 可以用来做多页的翻页滑动,并且采用了和UITableView类似的回收机制。3。 通过一个存储在NSUserDefault中的一个变量来判断上次退出程序是因为异常退出还是正常退出,异常退出的标准就是, 退出时没有去把NSUserDefaults中的这个变转载 2015-06-05 21:03:34 · 452 阅读 · 0 评论 -
CocoaPods 版本管理冲突 解决
近期在项目中首次使用了CocoaPods。从软件工程的角度来看,我对目前常见的CocoaPods使用方法有些意见,建议做一些改进。先说一下我建议的最佳实践,后面再分析为什么要这样做。并且希望大家根据自己公司的情况,讨论一下这几项建议是否合理,一起搞出一份真正的“最佳实践”。CocoaPods的常见使用方法参见唐巧的文章《用CocoaPods做iOS程序的依赖管理》。在他的基础上转载 2015-06-26 11:47:56 · 10968 阅读 · 0 评论 -
iOS图片填充UIImageView(contentMode)
本文主要形象的介绍一下UIView的contentMode属性:UIViewContentModeScaleAspectFit, //这个图片都会在view里面显示,并且比例不变 这就是说 如果图片和view的比例不一样 就会有留白如下图1原创 2015-06-30 15:28:10 · 1317 阅读 · 0 评论 -
iOS-获取Model(设备型号)、Version(设备版本号)、app(程序版本号)等
IOS-获取Model(设备型号)、Version(设备版本号)、app(程序版本号)等 NSLog(@"uniqueIdentifier: %@", [[UIDevice currentDevice] uniqueIdentifier]); NSLog(@"name: %@", [[UIDevice currentDevice] name]); NSLog(原创 2015-06-30 15:59:51 · 964 阅读 · 0 评论 -
iOS 视频播放 AVPlayer 循环播放 闪屏
问题终于解决,选用AVPlayer,重置一下AVPlayerItem就不会出现闪屏现象,注册一个通知同样可以实现循环播放,而且AVPlayer可以自定义播放样式,给了我们更大的发挥空间,完全可以自己DIY播放器样式。并且AVPlayer完全可以实现两个视频窗口播放!1.需要引入两个类库:在.h中引入#import <AVFoundation/AVFoundation.h>在.m中引入#import原创 2015-05-25 16:09:59 · 13925 阅读 · 1 评论 -
UITextInputMode currentInputMode is deprecated. 警告的解决
- (void)viewDidLoad{ [super viewDidLoad]; NSNotificationCenter *nCenter = [NSNotificationCenter defaultCenter]; [nCenter addObserver:self selector:@selector(languageChanged:) name:UITextI原创 2015-07-01 15:17:59 · 8295 阅读 · 0 评论 -
iOS 隐藏键盘
iOS开发里键盘是经常需要打交道的地方,下面为大家带来我整理总结的几种隐藏键盘的方法。一、隐藏自身软键盘当对于有多个UITextField控件都想通过点击“Return”来隐藏自身软键盘的情况,这时的最好办法是使用Did End on Exit事件。在点击软键盘右下角的“Return”按钮后,会触发该事件。该事件有一个sender参数表示当前文本框,这样便可以编写一个通用的事件原创 2015-06-10 16:47:31 · 706 阅读 · 0 评论