自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 WebViewJavascriptBridge解析和改造

WebViewJavascriptBridge框架可以同时支持UIWebView及WKWebView,完成native与web的交互。其主要核心思路是native在webView的代理中拦截url,根据url来做不同处理!

2023-08-09 15:05:18 446 1

原创 iOS最新组件实现

组件仓库的实现总体分为两步,第一步本地仓库建立,等本地仓库创建好之后需要检测其格式和内容是否合规,等检测通关之后,第二步就需要关联git到远端仓库,等可以使用地址引入才算完成。注意:根据开发规范,组件中的文件名称遵守swift命名空间,不要求带前缀,但是组件名称必须带前缀,前缀跟业务自己设计,后面跟随组件名称,组件名称必须能体现该组件的功能。

2023-08-09 14:45:17 289 1

原创 最新cocoapods安装流程

Homebrew是一款包管理工具,主要有四个部分组成:。$(curl-fsSL下面我们选择中科院的镜像安装:如果出现了下面的问题,是因为没有安装XCode造成的,这个时候我们要先去安装XCode,然后再执行一次终端操作即可。

2023-07-07 17:02:33 5741 4

原创 Flutter项目安装、调试常见问题

分析:页面组件从无状态变成了有状态,不能直接使用热重载,所以报错。解决办法:重启应用。

2023-05-31 23:15:17 1505

原创 iOS16系统开启开发者模式

开发者模式不会影响普通用户从 App Store 安装应用,真正影响的是需要在 Xcode 中机型构建和运行 App 等,以及使用 Apple Configurator 安装 .ipa 文件等场景,也就是第三方应用商店“侧载”应用。iOS 16 以后,开发者在 iPhone 上调试运行 App 都需要打开手机的开发者模式,否则 Xcode 将显示警告。故非开发和测试人员,谨慎开启。开发者模式可防止人们无意中在其设备上安装可能有害的软件,并减少开发者专用功能所暴露的攻击媒介。

2023-04-25 14:25:12 1755 4

原创 app打包平台架设

打包平台目前包含了APP打包构建、包历史展示(蒲公英)、埋点数据展示。整个系统是部署在一台闲置的mac电脑上,用ip来访问。

2023-04-25 14:19:25 267

原创 iOS Fastlane一键自动化打包

缺点:● 多次的环境配置选择,容易出错● 等待后需要二次手动上传,较为麻烦● ipa包容易有传错的可能。

2023-04-25 14:16:29 339

原创 关于组件化

它是一种App架构思路,对代码进行封装,封装成组件,组件可以单独使用。项目中使用组件包括以下● 基础组件(如网络请求类, 数据缓存, 基础UI,基础Foundition)● 功能组件(如图片浏览器)● 业务组件(如登录注册, 首页, 个人中心等)

2023-04-25 14:10:30 46

原创 iOS 组件化代码实现

新建SFUIKitDemo作为壳工程。

2023-04-25 14:07:22 285

原创 iOS移动端架构-组件化实践

处于层级架构的最上层,也就是业务层。各业务组件之间通过中心路由转发调起其他组件的服务,并能独立编译、运行。● 只能上层对下层依赖,下层对上层不能有依赖。● 同层间的功能库或组件之间都应无依赖关系。启动注册路由,完成模块间跳转与参数传递.● 下层中不要包含上层业务逻辑。启动注册服务类与实现类。

2023-04-25 13:59:52 113

原创 无痕化埋点方案

完全独立于业务层。

2023-04-25 13:56:59 57

原创 Flutter项目安装、调试常见问题

分析:页面组件从无状态变成了有状态,不能直接使用热重载,所以报错。解决办法:重启应用。

2023-04-25 13:44:18 794

原创 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 730

原创 Flutter屏幕适配

初始化,插入适配的尺寸:375 x 667,基于我们现有的设计稿。

2023-04-25 11:33:44 296

原创 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 7929

原创 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 1277 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 164

原创 iOS开发-屏蔽第三方输入法

在App中禁止第三方输入法的使用,在AppDelegate中添加下面代码即可:#pragma mark =============== 屏蔽第三方输入法 =================- (BOOL)application:(UIApplication *)application shouldAllowExtensionPointIdentifier:(NSString *)extensionPointIdentifier{ return NO;}...

2021-12-06 15:54:48 548

原创 iOS15适配笔记

一、导航的毛玻璃效果在iOS15中,UINavigationBar默认是透明的,有滑动时会逐渐变为模糊效果,可以通过改变scrollEdgeAppearance属性直接变为模糊效果 if (@available(iOS 15.0, *)){ UINavigationBarAppearance *appearance = [[UINavigationBarAppearance alloc] init]; appearance.backgroundEffect = [UIBl

2021-06-29 21:16:06 4952 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除