iOS适配
文章平均质量分 90
分享iOS系统适配资讯以及精品技术文章,只为你呈现有价值的信息,专注于移动端技术研究领域。
1. iOS15适配本地通知功能
2. iOS15 UI适配之导航条主题: 背景颜色、标题颜色
3. iOS14适配汇总:
a. 隐私权限相关:定位、相册、IDFA
b. KVC相关
c UIView相关
iOS逆向
华为云云享专家认证|阿里云开发社区博客专家,定期分享Java、iOS资讯(包括基础知识储备)、小程序开发与运营、阅读与写作。只为你呈现有价值的信息,专注于移动端技术研究领域。
展开
-
iOS小技能:xcode15适配
SDK does not contain 'libarclite' at the path '/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc/libarclite_iphonesimulator.a'; try increasing the minimum deployment target原创 2024-03-04 18:27:08 · 652 阅读 · 0 评论 -
iOS小技能:UITableView的适配 (iOS10/iOS14/iOS16.0)
前言要测试iOS10 可以下载模拟器,因为目前基本找不到iOS10的真机了。tableView numberOfRowsInSection:QCTReceiptsubFilterViewSection4KeyTypeTitle] 的使用执行顺序在iOS10的特殊之处:不能在在方法中 - (CGFloat)tableView:(UITableView *)tableView heightFo...原创 2020-01-02 11:42:36 · 11563 阅读 · 0 评论 -
iOS上架小课堂:被拒解决方案汇总【2.1蓝牙权限、3.1.1微信小程序、5.1.1权限使用说明、 境外IP访问权限等】
文章目录引言解决方案引言因为推广了微信小程序,昨天被拒绝了Guideline 3.2.2 - Business - Other Business Model Issues - UnacceptableWe noticed that your app includes an interface that displays or promotes mini programs for third-party apps, which is not appropriate for the App St原创 2021-04-23 09:04:53 · 2023 阅读 · 0 评论 -
应用上架小技能:2.1 蓝牙权限使用说明和5.1.1权限使用说明
uniapp权限说明配置界面。原创 2023-02-18 10:03:32 · 1033 阅读 · 0 评论 -
iOS小技能:UIWebView 被拒的解决方案(用更安全的WKWebView替代UIWebView)
如果真的要拦截来自 WKWebView 中的请求,还是需要实现 WKWebView 对应的 WKNavigationDelegate,并在代理方法中获取请求。处理afn的接口问题,老版本的post get formdata的请求形式在4.0都有了调整,因此需要更改工程中的相应的方法。WKScriptMessageHandler协议必须实现的函数,是APP与js交互,提供从网页中收消息的回调方法。2、移除/升级含UIWebView的第三方SDK(例: AFNetworking)原创 2022-12-08 15:18:02 · 2362 阅读 · 0 评论 -
iOS小技能:WKWebView与JS的交互
文章目录引言I、使用WKWebView替换UIWebView1.1 移除/升级包含UIWebView的第三方SDK(`grep -r "UIWebView" .`)1.2 移除/替换自己项目使用UIWebView API的代码II、升级包含UIWebView的第三方SDK的具体例子2.1 Installing AFNetworking 4.0.1 (was 3.2.1)`正式移除了UIWebView分类`III、 与JS交互(WKWebView)3.1 、JS调用iOS3.1.0 JS代码:3.1.1、原创 2021-04-14 09:17:20 · 3222 阅读 · 2 评论 -
iOS小技能:打包注意事项(私有API检测)
版权声明:本文为CSDN博主「iOS逆向」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。iOS开发者后台添加了新的UDID,如何更新自动管理签名证书的设备描述文件(Provisioning Profiles)?但是其实你上架只要先clean,直接archive,到时候选择自动管理证书就行了。如果开发和上线打包不同人操作的,那么TestFlighty的使用成为测试的同事的必备技能。为了能更好的协作管理项目,今天分享下第三方库管理规范,以Cocoapods为案例。原创 2022-12-08 14:19:04 · 5427 阅读 · 0 评论 -
iOS小技能: OCR 之银行卡/身份证信息识别(免费次数无限)
文章目录引言I、扫描银行卡1.1引入第三方SDK和头文件1.2 获取信息引言从CSDN下载Demo源码:https://download.csdn.net/download/u011018979/192659121、功能:扫描银行卡识别信息( 银行名称、 银行卡号)并截取银行卡图像2、应用场景:快速填充银行卡号的场景,比如商户进件、实名认证3、原理:3.1、自定义相机并利用第三方库SDK libexbankcardios.a 进行识别3.2、添加自定义的扫描界面(中间有一个镂空窗口和来回移动原创 2021-05-31 17:21:22 · 2909 阅读 · 0 评论 -
iOS小技能: ips 文件的分析
iOS15符号化换新工具了, iOS 15 的crash 文件改了格式, 用 Xcode 13 的 symbolicatecrash 也无法解析了,可使用脚本将新格式转换为之前的格式,再丢进去 symbolicate。dSYM 文件里存储了函数地址映射,这样调用栈里的地址可以通过 dSYM 这个映射表能够获得具体函数的位置。3)“右键——>Show in Finder” “右键——>显示包内容” aaa3ffdf-16ce-3065-bcba-293f7aee7c9b.dSYM.zip。原创 2022-11-07 10:09:43 · 2079 阅读 · 0 评论 -
iOS小技能: 开发 uni 原生插件(支持iOS Extension)
SDK 目录中的 HBuilder-uniPluginDemo为 uni原生插件开发主工程,该工程已经将各项配置都配置齐全,开发uni原生插件需要依赖此工程。entitlements 可选,JSON类型,需要覆盖到iOS Extension插件entitlements.plist中的数据。plists 可选,JSON类型,需要合并到iOS Extension插件Info.plist文件中的数据。只有uniCloud插件和原生插件支持付费,付费插件不支持下载,也就是付费原生插件目前不支持离线打包。原创 2022-10-26 17:19:50 · 2131 阅读 · 0 评论 -
iOS小技能:跳转到地图APP(应用外导航)
需求:跳转到已经安装的地图背景:为了减少app内存开支,以URI跳转的方式直接跳转到对应的地图进行导航,让最专业的人做最专业的事。原创 2022-10-17 16:45:40 · 2180 阅读 · 0 评论 -
iOS小技能:Xcode14新特性(适配)
Xcode 14 中新的编译器和链接器已经将 ARM64 的消息发送调用从 12 字节减少到 8 字节,因此如果是 OC 代码的话,使用 Xcode 14 编出来的二进制文件可以少 2%(老系统也有效)。背景:通过App Store升级Xcode时,下载完成还是停留在下载,不安装;使用nohup打开Xcode:编辑bash_profile,配置打开xcode的别名。问题:您不能打开应用程序“Xcode”,因为它正在更新。解决方式1: sign处需要手动勾选账号主体。解决方式2: 把sign禁掉。原创 2022-09-28 15:07:59 · 3545 阅读 · 0 评论 -
iOS小技能:URL编码
【代码】iOS小技能:URL编码。原创 2022-09-20 09:40:32 · 991 阅读 · 0 评论 -
iOS小技能:自定义导航栏,设置全局导航条外观。(iOS15适配)
前言在开发需求时候,app中使用的导航条在一个模块的主题基本是一直,因此可以通过自定义导航条来进行统一控制。codeHWNavigationController.h#import <UIKit/UIKit.h>#import "UIBarButtonItem+Extension.h"#import "ImageTools.h"@interface HWNavigatio........................原创 2020-02-12 11:56:09 · 13562 阅读 · 0 评论 -
iOS小技能:去掉/新增导航栏黑边(iOS13适配)
背景: 去掉导航栏下边的黑边在iOS15失效。原因:必须使用iOS13之后的API。原创 2022-09-15 09:48:44 · 1449 阅读 · 0 评论 -
iOS小技能:去掉TabBar的顶部黑线,并添加发光的阴影
- (void)setupshadowColor{ UIView * tmpView = self; tmpView.layer.shadowColor = [UIColor blackColor].CGColor;//设置阴影的颜色 tmpView.layer.shadowOpacity = 0.08;//设置阴影的透明度 tmpView.layer.s...原创 2019-06-21 12:02:36 · 13103 阅读 · 0 评论 -
iOS小技能:系统适配(持续更新)
文章目录引言I、 iOS14适配II、 iOS13适配III、 iOS12适配see also引言I、 iOS14适配iOS14适配汇总:【1、隐私权限相关:定位、相册、IDFA 2、KVC相关:不允许访问 UIPageControl的pageImage3、UIView相关适配:UITableViewCell兼容4、网络相关】iOS14 开启 encrypted DNS 提高安全性,防止DNS 劫持iOS14适配【 读取用户剪切板数据会弹出提示】1、 查找哪些SDK使用了剪切板,及时升级原创 2021-01-29 15:05:56 · 3847 阅读 · 2 评论 -
iOS小技能: 日历的使用(案例:两个时间的比较、获取最近30天的数据)
商户退款单号(商户退款单号,32个字符内、可包含字母,确保在商户系统唯一。同个退款单号多次请求,平台当一个单处理,只会退一次款。如果出现退款不成功,请采用原退款单号重新发起,避免出现重复退款。商户退款单号(out_refund_no):yyMMddHHmmss + xxxxxx(sid)+ 递增序号(隔天重置)iOS 获取时间的应用场景: 报表的时间筛选。例子2: 数据过滤: 获取最近7天的数据。案例1: 计算两个时间的间隔(天)工具方法:计算两个时间的间隔(天)案例2:处理微博的发布时间。原创 2022-09-05 17:19:50 · 1072 阅读 · 0 评论 -
iOS小技能:app侧登录流程【下篇】(打开app,如果 token不过期,就使用最近一次登录的token进行接口请求)
前言注意事项登录账号得到的token信息。最好不要作为一个独立的单利对象存储;而是将它作为单例对象的属性userInfo,便于切换账号存储token和其他账号信息如果之前是使用独立的单利对象UserInfoModel ,为了兼容代码可以这么做/** 登录账号得到的token信息。最好不要作为一个独立的单利对象存储;而是将它作为单例对象的属性userInfo,便于切换账号存储token......原创 2020-03-30 18:58:45 · 27965 阅读 · 0 评论 -
iOS小技能:版本升级原则(任何进步都比没有进步好) & 检查新版本方案(比较版本号大小的方法)
检查版本 :checkTheVersionWithappid #pragma mark 检查版本 STOREAPPID- (void)checkTheVersionWithappid:(NSString*)appid{ [QCTNetworkHelper getWithUrl:[NSString stringWithFormat:@"http://itunes.a...原创 2020-03-07 20:43:40 · 11330 阅读 · 0 评论 -
iOS小技能:从App Store官方接口查询 app信息(应用内调转到app store进行评论/下载)
前言应用内调转到app store进行评论检查版本showRateAlertRate it now#define kAppStoreAddress @"itms-apps://itunes.apple.com/app/id162?action=write-review" [[UIApplication sharedApplication] openU...原创 2019-12-30 14:39:17 · 15203 阅读 · 0 评论 -
iOS小技能: app侧退出登录处理流程
登录处理流程:上篇:前置知识下篇:核心实现(打开app,如果 token不过期,就使用最近一次登录的token进行接口请求)本文讲解退出登录处理流程:退出登录时清理相关的数据:token、消息推送别名移除相关通知:退出登录,切换UIWindow的主控制器之前,最好移除相关控制器监听的通知。............原创 2022-09-01 09:18:46 · 1143 阅读 · 0 评论 -
iOS小技能:Xcode13的使用技巧
将mainGroup 对应的值复制给productRefGroup 的值,按command+s保存project.pbxproj文件,Xcode将自动刷新,Products目录显示出来了。Xcode13新建的工程默认开启打包合并Info.plist功能,不再使用配置文件(Info.plist、entitlements),如果需要修改配置,直接在Xcode面板。打包脚本核心逻辑:在含有真机包路径下拷贝.app 到新建的Payload目录,zip压缩Payload目录并根据当前时间来命名为xxx.ipa。...原创 2022-08-26 09:05:27 · 1257 阅读 · 0 评论 -
iOS小技能:保存图片到相册( 监听用户的相册授权动作)
版权声明:本文为CSDN博主「#公众号:iOS逆向」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。iOS 保存图片到相册的需求:二维码界面,新增一个“保存到相册”按钮,点击完成将核心视图信保存到相册。如果保存的视图的宽原创 2022-08-22 15:28:18 · 1824 阅读 · 1 评论 -
iOS小技能:iOS14相册权限适配 (Limited Photo Library Access)
前言相册新增选择权限类型 PHAuthorizationStatusLimited :当页面弹出请求权限 Alert 时,会有 Select Photos… 选项,用户选择该选项时,会弹出页面供用户选择允许App访问的图片/照片。权限提示框会在每次冷启动后打开相册时重新弹出。I、适配要点:可以在 info.plist 中设置 PHPhotoLibraryPreventAutomaticLimitedAccessAlert 选项为 YES ,关闭提示,PHPhotoLibraryPreventA原创 2020-08-20 11:52:18 · 65847 阅读 · 4 评论 -
iOS小技能:简化版的隐私弹窗(xcode开发隐私协议弹窗)
本文针对不熟悉iOS代码的读者,如果是有经验的开发请看这篇文章:[https://kunnan.blog.csdn.net/article/details/103902362](https://kunnan.blog.csdn.net/article/details/103902362)原创 2022-08-19 14:52:31 · 2097 阅读 · 0 评论 -
iOS小技能:MASConstraint的安装与移除 ( 应用场景:灵活控制视图的展示与隐藏)例子:入库单详情界面未审核状态时展示审核按钮,否则隐藏审核按钮
前言有时间布局的时候,常常需要根据特定的模型数据来移除或者安装特定的约束条件,这个时候可以使用MASConstraint的- (void)uninstall { MASMethodNotImplemented(); }和- (void)install { MASMethodNotImplemented(); } 进行实现codeproperty/** 用于图片底部约束的移除与安装 *............原创 2020-01-15 11:13:29 · 11531 阅读 · 0 评论 -
iOS小技能:下拉刷新控件的适配
前言 present 半屏问题modalPresentationStyle属性默认不是UIModalPresentationFullScreen了,需要根据需求手动设置。LXNavigationViewController *nav = [[LXNavigationViewController alloc] initWithRootViewController:loginViewControl...原创 2020-02-24 14:44:50 · 13731 阅读 · 0 评论 -
iOS小技能:适配安全区域距离(safeAreaInsets)
使用自动布局,和使用API获取高度。原创 2022-08-08 11:19:21 · 2258 阅读 · 0 评论 -
iOS小技能:iOS无线真机调试
引言问题:Xcode13 新建项目 Products 目录不显示解决方式: 修改project.pbxproj 文件的productRefGroup配置信息效果:I 修改project.pbxproj 的product配置信息1.1 从Xcodeeproj 打开project.pbxproj1.2 修改productRefGroup 的值将mainGroup 对应的值复制给productRefGroup 的值,按command+s保存project.pbxproj文件,Xcode将自动刷新原创 2022-04-01 10:50:44 · 6133 阅读 · 0 评论 -
iOS小技能:封装定位SDK,统一数据模型和错误处理。
商户进件APP商户详情的重新定位,编辑进件信息时的商户地址定位、支付终端绑定的重新定位、新增拜访记录的定位、新增/编辑企业的企业地址定位。需求背景收款页面需要请求IP定位API获取经纬度,由于高德的API的库不准确(没有实时更新),使用公司决定换腾讯API。为了便于灵活切换,新增定位统一入口,用于封装腾讯SDK和高德SDK,便于灵活切换。商户端APP终端管理的设备定位、店铺定位。初始化locationManager。...........................原创 2022-07-20 11:17:06 · 1193 阅读 · 0 评论 -
iOS小技能:因境外IP无法访问导致 App 被拒的解决方案
跟运维安全部门进一步交流,看是不是没有放开国外访问这个域名的限制,看下是否允许通过IPv6网络访问这个域名。原创 2020-10-09 18:47:25 · 14931 阅读 · 0 评论 -
iOS小技能: 解决UITableViewCell兼容问题(iOS14适配)
文章目录I、问题分析II、使用方法交换,全局修改see also今天升级最新IDE Xcode,准备适配iOS14 API,结果发现app首页的cell中按钮也无法点击了。I、问题分析iOS14 UITableViewCell的子试图不能点击或者滑动等手势响应问题,发现有问题的cell基本都是直接cell.addSubView(tempView1)这种方式添加的,通过试图分析发现被系统自带的UITableViewCellContentView遮挡在底部了,所以需要改规范的做法cell.con原创 2020-09-18 19:10:02 · 146052 阅读 · 4 评论 -
iOS小技能:富文本编辑器(下篇)
使用IQKeyboardManager 键盘管理工具,布局采用Masonry,MVVM数据绑定。界面设计:推荐把工具栏添加到键盘,或者放在富文本编辑器的顶部https://blog.csdn.net/z929118967/article/details/125298245https://download.csdn.net/download/u011018979/85675638III 常见问题3.1 隐藏键盘失去焦点时,图片内容被清空问题: 标签的占位符,通过监听失去焦点事件,如果文本trim之后长原创 2022-07-08 09:57:23 · 1086 阅读 · 0 评论 -
iOS小技能:设置状态栏背景颜色(图片)
文章目录引言I 、状态栏背景颜色的适配方案1.1 使用新的API 【statusBarManager】1.2 适配特色场景:状态是有透明或者半透明的效果的场景引言设置状态栏背景颜色的解决方案:使用新的API 【statusBarManager】I 、状态栏背景颜色的适配方案问题 [Bugly] Trapped uncaught exception 'NSInternalInconsistencyException', reason: 'App called -statusBar or -st原创 2021-01-29 16:01:12 · 3983 阅读 · 1 评论 -
iOS13适配:1、present半屏问题 2、禁止 KVC访问UI控件私有API 3、深色模式适配 4、场景生命周期的适配方案
I、 适配第三方库在iOS13的问题:1.1) : 升级腾讯的第三方UI框架,解决iOS13 无法访问私有属性的问题II、 适配iOS13UI控件的API :(涉及的模块有登录)2.1)UITextField的_placeholderLabel属性:无法直接访问_placeholderLabel.textColor解决方案: 使用 NSMutableAttributedString 富文本............原创 2020-03-05 13:43:46 · 26544 阅读 · 0 评论 -
iOS小技能:设置tableView的点击事件优先级低于cell的选中事件(场景:比如筛选视图,监听蒙版的点击事件就隐藏筛选视图)
原理:利用cancelsTouchesInView属性,控制点击事件优先级场景:比如筛选视图,监听蒙版的点击事件就隐藏筛选视图。优先处理筛选视图的cell选中事件。原创 2019-04-19 17:36:40 · 11619 阅读 · 0 评论 -
iOS小技能:右滑返回
文章目录引言I 、添加右滑返回手势II、QMUI导致右滑返回没有生效的解决方法2.1 ` UINavigationController (QMUI) `进行控制右滑返回2.2 解决方法引言I 、添加右滑返回手势若项目有全局的UINavigationController基类,给页面添加右滑返回手势@implementation NavigationController- (void)viewDidLoad{ [super viewDidLoad]; //设置右滑返回手势的代理为原创 2021-07-16 15:07:19 · 2158 阅读 · 0 评论 -
iOS处理语言工具CFStringTransform 的应用
文章目录前言I、 CFStringTransform 初识1.1 Transform identifiers1.1.1 不同拼写之间的转换1.1.2 去掉重音和变音符号1.1.3 找出特殊字符的 Unicode 标准名II、例子:通讯录索引前言通过对用户输入内容,利用CFStringTransform变换,可以轻松实现实现一个通用的搜索index搜索内容可以是多语言的I、 CFStringTransform 初识很明显CFStringTransform 是 Core Foundation原创 2020-11-10 17:31:08 · 12441 阅读 · 0 评论 -
iOS小技能:自定义时间格式(适配iOS15.4之后12/24小时制的问题)
引言案例1: 小程序订单小票案例2:订单详情时间格式化I. 案例1: 小程序订单小票需求:小程序订单打印模板优化,头部增加配送订单、自提订单;自提订单增加显示自提时间,配送订单无需显示。订单接口数据格式: "selfMentionEndTime" : "2022-05-18 10:08:03", "selfMentionStartTime" : "2022-05-18 10:08:03",实现: if(detaiModel.deliv原创 2022-05-18 11:26:44 · 2125 阅读 · 4 评论