- 博客(19)
- 收藏
- 关注
原创 WebViewJavascriptBridge解析和改造
WebViewJavascriptBridge框架可以同时支持UIWebView及WKWebView,完成native与web的交互。其主要核心思路是native在webView的代理中拦截url,根据url来做不同处理!
2023-08-09 15:05:18 584 1
原创 iOS最新组件实现
组件仓库的实现总体分为两步,第一步本地仓库建立,等本地仓库创建好之后需要检测其格式和内容是否合规,等检测通关之后,第二步就需要关联git到远端仓库,等可以使用地址引入才算完成。注意:根据开发规范,组件中的文件名称遵守swift命名空间,不要求带前缀,但是组件名称必须带前缀,前缀跟业务自己设计,后面跟随组件名称,组件名称必须能体现该组件的功能。
2023-08-09 14:45:17 445 1
原创 最新cocoapods安装流程
Homebrew是一款包管理工具,主要有四个部分组成:。$(curl-fsSL下面我们选择中科院的镜像安装:如果出现了下面的问题,是因为没有安装XCode造成的,这个时候我们要先去安装XCode,然后再执行一次终端操作即可。
2023-07-07 17:02:33 7165 5
原创 iOS16系统开启开发者模式
开发者模式不会影响普通用户从 App Store 安装应用,真正影响的是需要在 Xcode 中机型构建和运行 App 等,以及使用 Apple Configurator 安装 .ipa 文件等场景,也就是第三方应用商店“侧载”应用。iOS 16 以后,开发者在 iPhone 上调试运行 App 都需要打开手机的开发者模式,否则 Xcode 将显示警告。故非开发和测试人员,谨慎开启。开发者模式可防止人们无意中在其设备上安装可能有害的软件,并减少开发者专用功能所暴露的攻击媒介。
2023-04-25 14:25:12 2388 4
原创 关于组件化
它是一种App架构思路,对代码进行封装,封装成组件,组件可以单独使用。项目中使用组件包括以下● 基础组件(如网络请求类, 数据缓存, 基础UI,基础Foundition)● 功能组件(如图片浏览器)● 业务组件(如登录注册, 首页, 个人中心等)
2023-04-25 14:10:30 65
原创 iOS移动端架构-组件化实践
处于层级架构的最上层,也就是业务层。各业务组件之间通过中心路由转发调起其他组件的服务,并能独立编译、运行。● 只能上层对下层依赖,下层对上层不能有依赖。● 同层间的功能库或组件之间都应无依赖关系。启动注册路由,完成模块间跳转与参数传递.● 下层中不要包含上层业务逻辑。启动注册服务类与实现类。
2023-04-25 13:59:52 157
原创 iOS集成Flutter
因安卓代码原因,有很多jar包和Flutter3.0以后得语法冲突,导致无法使用最新的Flutter语言开发,需要将Flutter的版本控制到Flutter3.0以下,和安卓环境一直的情况下,我们使用Flutter2.2的版本。因为我的电脑已经安装了Flutter3.0,所以需要降级,先打开终端,具体降级方式如下:1、查看所有分支和当前分支2、切换到指定分支3、降级到指定版本4、检查Flutter环境如果想要安装最新的Flutter版本,可以这样如果不是M系列芯片则直接下一步:pwd。
2023-04-25 13:32:26 857
原创 XCode14线程警告问题
Thread running at QOS_CLASS_USER_INITIATED waiting on a lower QoS thread running at QOS_CLASS_DEFAULT. Investigate ways to avoid priority inversions
2023-02-27 11:16:33 9309
原创 pod install 出现 incompatible character encodings: UTF-8 and ASCII-8BIT
##一、发现问题在组件化开发中,很多情况下公司的内部组件都不是一个人开发的,这种情况下就容易出现这个问题。、、、[!] Failed to download ‘XXXX’: incompatible character encodings: UTF-8 and ASCII-8BIT、、、##二、寻找问题因为平时我们也是共享组件的,并没有出现过这个问题,我们也是一脸懵,我们先是对比了一下组件的版本和分支号,发现没有问题。网上也搜索了很多,基本上都是说的格式问题,我们先是查询了下PodFile文件中
2022-05-12 11:13:43 1394 1
原创 RunLoop
RunLooprunloop是用来处理事件的循环。NSRunloop是CFRunloop的封装,CFRunloop是一套C接口。runloop处理消息的流程是“接收消息->恢复活跃->处理消息->进入休眠”。在runloop中,有多个运行模式,但是只能选择一种模式运行,mode中至少有一个timer或者是source。Mode:系统默认注册5个ModekCFRunLoopDefaultMode:App默认Mode,通常来说主线程在这个Mode下运行UITrackingRunLo
2022-05-12 10:48:19 217
原创 iOS开发-屏蔽第三方输入法
在App中禁止第三方输入法的使用,在AppDelegate中添加下面代码即可:#pragma mark =============== 屏蔽第三方输入法 =================- (BOOL)application:(UIApplication *)application shouldAllowExtensionPointIdentifier:(NSString *)extensionPointIdentifier{ return NO;}...
2021-12-06 15:54:48 632
原创 iOS15适配笔记
一、导航的毛玻璃效果在iOS15中,UINavigationBar默认是透明的,有滑动时会逐渐变为模糊效果,可以通过改变scrollEdgeAppearance属性直接变为模糊效果 if (@available(iOS 15.0, *)){ UINavigationBarAppearance *appearance = [[UINavigationBarAppearance alloc] init]; appearance.backgroundEffect = [UIBl
2021-06-29 21:16:06 5016 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人