- 博客(1050)
- 资源 (44)
- 问答 (6)
- 收藏
- 关注
原创 iOS开发进阶(二十三):iOS 常见面试题汇总
Block是一种用于封装一段代码的数据类型。Block实际上是一个匿名函数,它可以捕获一些变量和常量,并将它们封装在一起,形成一个可以在需要时执行的代码块。Block可以被当作一个对象来使用,它可以作为方法参数成员变量局部变量数组元素等等。Block中捕获的变量和常量被保存在Block中,可以在Block执行时使用。在使用BlockBlock中捕获的变量需要在Block执行时仍然存在。如果Block中捕获的变量是局部变量,那么需要使用__block修饰符来使其在Block执行时仍然存在。- Block。
2024-08-22 11:13:54
339
原创 iOS开发进阶(二十二):Xcode* 离线安装 iOS Simulator
Xcode 15 安装包的大小相比之前更小,因为除了 macOS 的 Components,其他都需要动态下载安装,否则提示。如果不安装对应的运行模拟库,真机和模拟器无法运行,且无法新建项目。但是由于模拟器安装包过大且不支持断点续传,在经历了在线安装 N 次失败后,决定采用离线的方式安装,最后成功了。
2024-08-14 09:10:17
490
原创 Mac提示Could not set resource limits: 150: Operation not permitted while System Integrity Protecti解决方案
在应用Jenkins构建ios项目阶段,终端反复出现错误,
2024-08-13 15:45:53
335
原创 ReactNative进阶(五十四):真机运行报错 “No bundle URL present“解决方案
遇到以上问题,需要手动生成ios下的文件。但是使用另一台MacBook Pro 就没有类似问题。
2024-08-13 14:03:53
594
原创 linux应用ssh完成scp复制
在linux操作系统中,可以使用scp命令进行服务器之间的文件复制,但是复制时需要输入远程服务器的密码,这在经常需要进行远程复制操作时会略显麻烦,如果远程复制是在定时任务中执行,更会导致脚本不能自动执行,这时就需要实现无需输入密码进行scp复制。无需输入密码进行scp复制的方法有多种,本博文介绍下使用公私钥来实现无需输入密码完成scp复制。
2024-08-13 11:02:18
402
原创 Git进阶(十五):不同Git仓库设置不同配置项
项目源码管理阶段,会遇到不同项目设置不同用户信息等场景。为不同的Git仓库设置不同的配置项,需要在仓库的本地配置文件中进行设置,而不是使用全局或系统级别的配置。Git的本地配置文件位于每个仓库的文件中(若未找到.git文件夹,可通过取消隐藏展示文件查看)。以下是为不同仓库设置不同配置项的步骤:打开终端或命令行界面。切换到想要配置的Git仓库的目录。使用git config命令来设置或修改仓库的本地配置项。由于设置的是本地配置,所以不需要使用--global或--system选项。
2024-08-01 21:26:12
375
原创 iOS开发进阶(二十一):package.plist 打包配置文件详解
是iOS应用打包时使用的配置文件,它包含了应用的元数据、权限等信息。具体应用在xcodebuild进行分发签名应用包阶段。# 根据 xcarchive 文件进行签名有关xcodebuild命令,详参博文《iOS开发进阶(十四):xcodebuild 命令应用详解。
2024-07-31 10:21:36
293
2
原创 Git进阶(十四):Windows下 git 提示 Repository not found
在Windows10下执行的时候出现Repository not found错误。解决方法如下:打开控制面板搜索“凭据”选中“Windows凭据”在“普通凭据”一栏中查看当前git服务器配置的凭据信息是否正确,出现以上问题的大部分原因是凭据已过期或git服务器凭据已被删除(我的错误原因就是同一git库下存在2个用户信息,实际凭据信息只维护了一份,导致另一份凭据信息不存在,需重新维护)。
2024-07-15 11:28:43
399
原创 Vue进阶(四十五)Jest集成指南
在前期博文《Vue进阶(八十八)Jest》中,讲解了Jest基本用法及应用示例。一切顺利的话,按照文档集成应用即可,但是集成过程中遇到的问题可能五花八门,此篇博文主要分享Vue集成Jest阶段遇到的问题及解决方案。首先,需要确认项目自身环境参数配置,主要涉及babeljestbabel-jest,应用其中某个不合适的版本可能会导致各种嵌套问题出现,最终无法集成Jest。
2024-07-03 17:32:38
903
原创 ReactNative进阶(二十八)Metro
众所周知,Metro是默认的 JavaScript 打包模块。对于前端项目,打包工具已有webpack(大而全,图片代码打包),rollup(专攻代码打包,框架场景常见)等,既然有这些打包工具为什么还要在移动端搞一个metro,其中一个原因为ram bundle,iOS采用读取一个文件效率更高,Android采用。
2024-06-23 18:30:07
677
原创 Vue进阶(八十八)Jest
Jest 是由 Facebook 提供的开源JavaScript测试框架,特别适用于React和Node.js环境。它以简单的配置、高效的性能和易用性而闻名,旨在简化前端开发中的单元测试集成测试端到端测试和快照测试。Jest 提供了一套完整的测试解决方案,包括断言库测试运行器模拟工具等。此外,Jest还提供内置的代码覆盖率工具,帮助开发者优化测试范围,使得编写和运行测试变得更加简单和高效。开箱即用:Jest 内置了断言库、测试覆盖率报告等功能,无需额外配置即可开始编写测试。
2024-06-07 09:38:56
1378
原创 Vue进阶(贰零幺)变量动态绑定
data是Vue实例中的实例属性,表示Vue实例观察的数据对象。Vue实例的数据对象。Vue 会递归地把 data 的property转换为gettersetter,从而让 data 的property能够响应数据变化。对象必须是纯粹的对象 (含有零个或多个的key/value对):浏览器 API创建的原生对象,原型上的property会被忽略。大概来说,data 应该只能是数据 - 不推荐观察拥有状态行为的对象。一旦观察过,你就无法在根数据对象上添加响应式property。
2024-05-16 19:01:51
567
原创 跨平台应用开发进阶(五十四)cordova自定义插件
在前期博文《ReactNative进阶(一):ReactNative 学习资料汇总》中,提到目前主流的移动跨平台技术方案大体可以分为三类,使用原生内置浏览器加载HTML5的Hybrid技术方案,采用此种方案的主要有CordovaIonic和微信小程序;使用JavaScript语言进行开发,然后使用原生组件进行渲染,采用此方案的主要有Weex和轻快应用;使用自带渲染引擎和自带原生组件来实现跨平台,采用此种方案的主要是Flutter。注意⚠️:存放自定义cordova插件目录不能有空格可能会报错!
2024-05-15 14:27:42
1143
原创 Vue进阶(贰零贰)六种常用数据加密方式
在Vue.js项目中,通过数据加密确保敏感信息的安全应用场景十分常见。虽然Vue.js本身不提供数据加解密功能,但可以通过使用JavaScript库来实现这一目标。
2024-05-08 14:49:28
893
原创 Vue进阶(贰零捌)浏览器地址栏URL防篡改攻略
在应用 vue.js 开发前端项目时,浏览器中url 地址栏参数的处理是一个很基础但却很重要的问题。在很多情况下,我们需要从 url 中获取参数,比如从上一个页面跳转到当前页面,需要将一些信息传递给这个页面,这时候就需要将这些信息以参数的形式传递给 url。但是,有时候这些参数又需要被隐藏起来,毕竟 url 中敏感信息不应该被轻易泄露,因此本文将介绍如何在 vue.js 中隐藏地址栏参数。
2024-05-07 17:19:04
1215
原创 iOS开发进阶(二十):Xcode 断点调试详解
所谓断点,其实就是一个让应用暂停运行的机制,这是为了方便开发人员执行调试,查看寄存器的某些值。既然设置了断点,可以让应用停在某一时刻,那么这一时刻应用所处的运行环境便一目了然,这个环境就是案发现场,而断点就是帮助开发人员破案的工具。这个时候开发人员便可以使用各项调试命令,而编译器则会反馈相应线索。Xcode编译器允许开发人员在代码中的任意位置设置断点,但是如何打断点也是一门手艺,有些断点的设置是毫无意义的,比如将断点设置在了一处声明某个常量的地方,那么编译器便会跳过这处,直到它遇见真正的可执行指令处。
2024-04-24 10:49:43
1689
原创 iOS开发进阶(十九):xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools)
Xcode 14.1Xcode 14.2Xcode 15.2没错,为了验证设备兼容性,办公电脑中安装了三个版本的Xcode。项目编译阶段,出现如下错误:详细错误信息如下:编译阶段出现以上错误,通常意味着Xcode无法找到或无法正确访问命令行工具的路径。这可能是因为命令行工具没有安装,或者安装后的路径不正确。解决方法:打开Xcode 14.2,然后前往“Xcode”菜单 -> “Settings”。在弹出的窗口中,选择“Locations”标签页,确认“”部分是否有显示路径。
2024-04-17 15:01:58
892
原创 iOS开发进阶(十八):页面传参
有关视图跳转详参博文《iOS开发进阶(十一):ViewController 控制器详解本篇博文继续讲解视图跳转参数如何传递与接收。界面跳转传值实际上就是将数据从一个界面传送给另一个界面,本文中的传值基于实现,首先在里面创建一个,把作为其根视图。return YES;新建一个继承于的视图控制器,命名为,为方便讲解,令为A,NextViewController为B。并在两个控制器分别放上一个button和一个label,label作为属性,button增加一个点击事件。在。
2024-04-12 16:18:25
586
原创 iOS开发进阶(十五):cocoapods 常用命令汇总
iOS项目开发阶段,应用cocoapods进行类库管理必不可少,掌握cocoapods相关常用命令同样很重要。
2024-04-03 14:23:09
455
原创 iOS开发进阶(十三):脚手架创建iOS项目
新建项目初期,需要创建项目基本框架,为此离不开辅助工具,及脚手架。当然,IDE也可以实现新建空白项目,但是其新建后的项目结构可能不符合预期设计,故需要通过脚手架创建项目方式统一项目开发规范,对于开发管理至关重要。open ../其中,生成后的项目结构如下图所示:由项目结构可知,脚手架中对项目做了很好的分层处理,便于项目解耦。
2024-04-02 17:07:47
765
原创 iOS开发进阶(十四):xcodebuild 命令应用详解
关于iOS组包,详参博文《ReactNative进阶(三十四):Jenkins 流水线 组包 iOS 应用包 ipa Archive 阶段报错error: Multiple commands produce问题修复及思考。
2024-04-02 10:33:10
2042
原创 iOS开发进阶(十二):UIImage 载入图像
仅载入图片,图像数据不会缓存。因此对于较大的图片以及使用情况较少时,那就能够用该方法,减少内存消耗。用这样的方式会消耗非常大的内存。载入图像也有自己的优势。对于同一个图像系统仅仅会把它。类方法加载的图片,只能获取ipa包路径下的图片资源。到内存一次,这对于图像的反复利用是非常有优势的。载入图像的方法非常多。中且也能加载ipa包路径下的图片资源。类方法加载的图片,通常放置在。类方法创建图片对象。
2024-03-28 13:33:00
344
原创 iOS开发进阶(十一):ViewController 控制器详解
iOS 界面开发最重要的首属和View是View的控制器,也就是一般的页面,用来管理页面的生命周期(它相当于安卓里的Activity,两者很像,但又有一些差异)。的特点是它有好几种。一种最基本的。所谓容器,就是它们本身不能单独用来显示,必须在里面放一个或几个。用于导航栏管理页面;用于底部tab管理页面;用于切换器管理页面;容器还可以嵌套,比如把放进里面,这样在tab页面里,可以用启动导航栏样式的二级子页面。
2024-03-28 10:53:58
1332
原创 iOS开发进阶(十):viewController 生命周期讲解
方法:销毁视图,释放资源。不要手动调用此方法,当引用计数值为0的时候,系统会自动调用此方法。可能会被调用多次(View可能会被多次加载),当view被添加到其他view中之前,会调用。当view从其他view中移除之前,调用。当view不再使用时,受到内存警告时,会将view释放并将其指向为。时,view已经生成了,时view还没有生成,分为A和B两个视图。
2024-03-28 09:46:04
962
原创 Vue3进阶(叁):关于 Vue2 项目迁移至 Vue3 的几点注意事项
1 月 2 日消息,Vue.js 作者尤雨溪发文声称,Vue 2 已于 2023 年 12 月 31 日结束生命周期(EOL),目前 Vue 2 已经无法接收到新功能及修复补丁,还在使用 Vue 2 的开发团队应迁移至最新的 Vue 3 版本。Vue 2.0 最初发布于 2016 年,至今已经有 7 年历史,尤雨溪表示,2.0 版本是 Vue 成为主流框架历程中的一个重要里程碑,“不过随着 Vue 3 的成熟,如今是时候淘汰 Vue 2 了”。
2024-03-26 00:19:41
1928
原创 iOS开发进阶(九):OC混合开发嵌套H5应用并互相通信
APP开发过程中,当某些待集成三方SDK不得不使用原生技术栈集成实现时,抽离出公共功能部分并由H5实现是不错的解耦选择,为此便涉及到原生应用如何集成三方SDK,如何嵌套H5,并实现原生与H5通信。
2024-03-25 14:30:37
1152
原创 ReactNative进阶(五):React Native与原生通信
用Android Studio打开一个已经创建好的RN项目,选择文件。创建一个类MyNativeModule继承,暴露出一些让RN调用的方法,封装成一个原生模块。实现getName方法,用于返回RN代码需要寻找的类的名称。//RN代码要通过名字来调用该类的方法@Override实现类的构造方法,将传入的上下文赋值给类内部私有的上下文。// 创建一个上下文,放到构造函数中,得到reactContext创建暴露给RN调用的方法,需要用注释符号修饰。//方法不能返回值。
2024-03-08 14:39:08
1586
原创 iOS开发进阶(八):ipa应用唤起并跳转至指定页面
可通过命令查看控制台日志信息。添加版本标识可通过实现。APP间互相唤起是常用场景,android中通过IntentFilter实现APP唤起。
2024-03-07 14:13:41
1209
原创 ReactNative进阶(四十三)iOS项目Xcode本地联调
项目组应用RN技术栈开发ios应用后,应用jenkins实现ipa组包及功能验证,过程耗时。故迫切需要实现iOS应用本地热部署,为此离开不了Xcode。作为非原生开发,特梳理此文。Xcode14.2Xcode 15.2 无法真机联调0.60.3。
2024-02-28 09:11:11
680
原创 ReactNative进阶(二十三)error: no type or protocol named ‘RCTBridgeModule’问题修复
Jenkins初步怀疑是依赖包缺失导致,通过将之前的备份依赖包替换至现有项目中,问题得以解决😂。
2024-02-22 10:44:53
485
原创 Android进阶(二十九) 走近 IntentFilter
翻译成中文就是“意图过滤器”,主要用来过滤隐式意图。当用户进行一项操作的时候,Android系统会根据配置的 “意图过滤器” 来寻找可以响应该操作的组件,服务。例如:当用户点击PDF文件的时候,Android系统就会通过设定好的意图过滤器,进行匹配测试。找到能够打开PDF文件的APP程序。
2024-02-21 09:37:44
899
原创 ReactNative进阶(三十六):iOS 横屏适配
应用RN技术栈实现APP上线后,业务部门领导会上反馈未实现ipad横屏全屏展示,用户体验较差。由此,一场pad横屏全屏展示的APP调优工作由此开展。
2024-01-23 16:08:50
1272
原创 iOS开发进阶(六):Xcode14 使用信号量造成线程优先级反转问题修复
应用Xcode 14.1进行项目编译时,遇到以下错误提示,导致APP线程暂停。以上问题是由于iOS信号量造成线程优先级反转,在并发队列使用信号量会可能会造成线程优先级反转。经过查询资料,发现是在XCode14XCode14上默认开启的),这个工具会让APP在运行的时候,发现有例如线程优先级反转和非UI工作在主线程上运行等问题的时候,就会在XCode问题导航栏中提示该卡顿风险警告,可以帮助我们在开发初期就能发现并解决隐含的卡顿风险问题;这个不是崩溃,如果不想要,可以在 “的中去掉勾选”。XCode14。
2024-01-12 16:46:45
2869
原创 ReactNative进阶(四十三)ios组包报错getaddrinfo ENOTFOUND static.realm.io问题修复
前期对此问题已经折腾一阵,并得以修复,没想到今天再次遇到此问题,故记录之。
2024-01-04 14:54:52
682
原创 ReactNative进阶(四十五)自定义主题色
互联网应用需要能够根据实事情况做出相应调整,例如主题置灰效果。比较简单的实施方案是在样式中添加滤镜效果,例如:把替换成即可。核心代码就是,意思是「把当前元素及其后代元素设置成100%的灰度模式// 现代浏览器.gray {// 远古浏览器.gray {/* 现代浏览器标准 *//* IE */鉴于RN不支持filter设置滤镜属性。故需通过原生层面实现。
2023-12-15 10:20:34
725
原创 ReactNative进阶(四十九)project.pbxproj 配置文件详解
在Xcode中能看见所有的公共配置信息都存在于中。主要包含跟文件相关的BuildFileGroup和;跟编译相关的BuildPhase和(List);以及一些列Target和。开发者比较关键的信息是配置应用PP文件、包名及APP 版本号。
2023-12-13 17:39:38
1322
原创 ReactNative进阶(五十)React Native报Cannot initialize a parameter of type‘NSArray<id<RCTBridgeModule>>解决方案
网上给出的解释是由于升级Xcode12.5之后导致的问题,但是通过查看项目jenkins构建记录,发现上一次构建成功的Xcode版本与此次构建失败的Xcode版本一致,均为,故以上说法不成立。
2023-12-09 10:29:36
1053
2
原创 Vue进阶(贰幺幺)前端开发需知悉的浏览器及其内核
只是用户看到仅仅只是浏览器本身,却很少能看到浏览器最核心的部分—浏览器内核。从第一款libwww(Library WorldWideWeb)浏览器发展至今已经经历了无数竞争与淘汰了。现在国内常见的浏览器有:IE、Firefox、QQ浏览器、Safari、Opera、Google Chrome、百度浏览器、搜狗浏览器、猎豹浏览器、360浏览器、UC浏览器、遨游浏览器、世界之窗浏览器等。但目前最为主流浏览器有五大款,分别是IE、Firefox、Google Chrome、Safari、Opera。
2023-11-28 11:09:02
1359
原创 Vue进阶(幺柒零)项目部署后IE报 SCRIPT1002:语法错误 解决方案探讨
Vue项目改造升级后,原本本地热部署后IE可正常打开的项目出现页面白屏且控制台给出SCRIPT1002:语法错误的提示信息。经过代码排查,发现项目中新引入了一些依赖包导致系统无法正常启动。出现以上错误,可从以下几个方面查找原因:可能与IE的某些插件冲突。把所有无关的IE加载项全部禁用后尝试;引用了不存在的 js 文件;页面的某些文件在文档模型还没建立时就已经开始引用相关的节点;令人感到疑惑的是:其他原本可以本地IE热部署的项目在进行同样的升级改造后,依旧可以实现本地IE部署,且没有任何错误信息。
2023-10-26 15:19:36
2197
2
Vue下textarea文本框根据内容自适应改变高度
2020-10-20
BackToTop.zip
2019-11-05
dubbo-admin-2.5.4 Web管理平台.zip
2018-04-29
dubbo-monitor-simple-2.5.3.zip
2018-04-29
w3c标准html5手册
2017-08-28
Chart.js实现饼状图添加文字
2017-08-28
Icon制作神奇-Greenfish Icon Editor3.31官方中文版
2017-04-25
iOS集成听云uni-app插件JS资源文件
2022-10-12
基调听云App移动应用性能管理产品采用SDK方式实现对App的**崩溃、卡顿、超时**等性能问题进行采集,并能对真实用户体验数据
2022-10-11
react-native实现ios横屏全屏展示
2024-03-13
react-native实现ios横屏全屏展示
2024-03-05
谁是第3w [face]monkey2:012.png[/face]
2021-03-24
学无止境[face]monkey2:005.png[/face]
2021-03-22
TA创建的收藏夹 TA关注的收藏夹
TA关注的人