- 博客(276)
- 资源 (18)
- 问答 (2)
- 收藏
- 关注
原创 iOS当遇到很奇特的页面的坐标问题时容易忽略的地方
这样在右键查看一个view的时候,打印的时候,打印的就是比较完全的信息。新建一个UIView的分类,重写debugDescription方法。
2025-04-01 20:29:00
202
原创 鸿蒙next中使用rcp忽略https证书注意事项
而且session是有数量限制的,同时只能存在16个,否则会报错1007900994,用完必须session.close()关掉。3.创建session时特别注意: 不是每个url都创建一个session。只需要创建一个session可以基本无限请求。2.使用下面代码忽略https证书校验。session 不能创建为局部变量。
2025-03-31 14:19:47
166
原创 鸿蒙next中如何使用hdc命令安装客户端包
选中工程的根目录,点build,点make all modules,执行完成后每个module下都会生成一个hsp包,app入口是hap包,然后使用 ./hdc install ha/sp路径 ,每个都需要执行一次,如果有包含关系按照报错执行即可。4、生成的这些包如何安装到手机上:手机连接到电脑,找到hdc工具,一般在这个目录。1、获取手机的udid重新签名,手机已经连接电脑的话可以自动签名。生成的包目录如上图,将所有的ha/sp包复制出来放到一个文件夹。然后打开命令行工具 ,cd 到这个目录。
2025-02-20 14:57:20
503
原创 纯血鸿蒙开发DevEco Studio NEXT Release5.0.3.900 ohpm ERROR: Install failed, detail: Error: ENOENT: no such
纯血鸿蒙开发 DevEco Studio NEXT Release5.0.3.900编译器报错的问题。解决办法是,把工程里所有的 oh-package-lock.json5 删掉,重新运行。运行成功后再把删除的文件从git重置回去也不影响。这个问题经常出现在更换了三方har包之后。
2024-12-26 11:09:13
400
原创 iPod touch6 使用xcode15.2运行工程报错dyld: Symbol not found: _OBJC_CLASS_$_NSConstantArray的解决办法
iPod touch6 的系统版本是 iOS12.5,运行工程报错。然后问题就解决了,上线的时候记得去掉。解决办法:我们可以直接创建一个叫‘’的空类放到工程里,调试的时候使用。还是相同办法,直接创建一个叫‘
2024-12-23 14:26:57
343
原创 UICollectionView在xcode16编译闪退问题
然后在xcode16运行是会直接闪退的,控制台会显示。问题原因在于,轮播图在自动轮播的时候调用的方法有问题。
2024-11-28 16:07:02
2226
1
原创 鸿蒙开发之 组合手势 中两指捏和手势不识别的问题
将 count 改为 fingers ,fingers 才表示识别两个手指的操作。可是只有单指移动是好用的,代码如下。实现效果是两指捏和,单指移动。只要两个同时存在就会导致异常。
2024-02-27 09:51:17
576
原创 HarmonyOS鸿蒙开发如何读取工程目录中的非图片资源文件(pdf,word,txt等等)的uri
而且文件必须保存在特定目录下,以yyyy.pdf为例。这些里面是找不到项目目录中的资源文件的。将文件写入沙盒路径获取uri。然后通过资源管理方式读取。
2024-02-01 14:21:09
2239
原创 鸿蒙开发之如何将相册中的图片读到Canvas画布
第三步:返回的是图片的路径,然后转成 ImageBitmap。第一步:申请相册相机文件权限(很重要)然后就完成了相册图片加载到画布的功能。第二步:打开相册,选取图片。申请方法见上一篇博客。
2024-01-17 21:21:47
713
原创 鸿蒙开发api9及以上之相册权限、相机权限、文件读写权限申请的正确方法
"ohos.permission.MEDIA_LOCATION" 文件位置权限: 允许应用访问用户媒体文件中的地理位置信息。"ohos.permission.READ_MEDIA" 文件读权限。"ohos.permission.WRITE_MEDIA"文件写权限。1.在module.json5中注册权限信息。和"abilities": []同级别。2.然后在需要调用的地方。获取当前context。4.最后才是代码调用。
2024-01-17 20:04:00
3833
原创 鸿蒙开发之如何实现手势解锁、图案解锁
如何清除轨迹:由于只能按矩形删,所以采用全部清空的策略,记录已连接的点,每移动一下,重新绘制一遍。固定放置9个button,使用stack使画布在button上面然后设置透明背景,使用鸿蒙提供的绘图工具:Canvas,在onTouch方法处理移动的坐标点。图案解锁的效果演示视频。实现效果:待插入视频。
2024-01-16 15:38:36
1024
原创 鸿蒙开发之如何使用ios的页面布局方式开发鸿蒙app
然后再添加控件,设置position,就相当于ios中的x,y。然后,顺便说一下鸿蒙里面创建的控件没有对象返回,let btn = Button();然后再加一个按钮,紧挨上一个按钮的右下角。这时展示效果如下,在左上角展示。背景颜色设置为粉色,方便查看。
2024-01-15 17:24:18
536
原创 鸿蒙开发之如何在断点调试时查看调用堆栈
有时候只显示一行,因为有同步异步之类的操作,需要重新打断点查看。然后在编译器左下角的debug选项卡,显示的即是。点击 下面这个按钮断点调试工程。
2024-01-11 10:37:22
616
原创 鸿蒙开发之如何查看界面层级
然后点击deveco studio 的 tools工具栏的ArkUl Inspector。然后选择一下进程please select a process。首先,需要是在真机或模拟器已经是run的状态。然后界面下面显示出层级显示卡,但还看不到。
2024-01-08 14:08:15
930
原创 鸿蒙开发之API version 10 如何声明全局变量
直接在EntryAbility.ets这个入口方法上方声明。API version 10 不能使用 var 所以使用。声明全局变量肯定是为了其他文件能够引用 所以使用。然后在其他的ets文件中,直接调用即可,会自动引用。比如声明一个UIAbility供外部调用。
2024-01-06 16:48:57
1538
原创 iOS原生 输入框短信自动填充多遍 原生解决办法
收到第一个长度为6的值时,取消监听,发接口,接口回来后,再增加监听。当用原生代码监听的时候,判断6位直接发接口就会导致发3次,短信自动填充 只有当输入框text无值的时候才会显示。准确来说会走很多遍,比如验证码是123456。这两种方法 自动填充时都候会走 3整遍。监听输入框内容变化的其中两种方法。所以不需要考虑这种情况。
2023-07-21 15:04:36
1068
原创 *** -[NSTaggedPointerStringCStringContainer retain] called, not supposed to happen
【代码】*** -[NSTaggedPointerStringCStringContainer retain] called, not supposed to happen。
2023-03-21 16:47:37
225
原创 UIApplication openURL 的内部实现 和 UIActionSheet showInView的内部实现 和 UIApplication windows的内部实现
UIApplication windows 是已经不再推荐的方法 需要("Use UIWindowScene.windows on a relevant window scene instead", ios(2.0, 15.0))主要是这句 [rdi _presentAlertControllerFromRect:r14 inView:0x0 direction:0x1 animated:r9 completion:var_50];1查看ios系统调用打电话的弹框如何弹出来的。直接跳页的时候它还在,
2023-03-09 14:38:15
499
原创 TMF开发中遇到的问题之页面经常偶发“系统异常,请稍后重试。”的弹框报错问题
另一种原因和是webview的usergent有关,客户端里会重新设置usergent添加自己对应的标识,前端的webview页面加载时先判断usergent是客户端还是电脑浏览器,然后走不同的请求方法,来设置是浏览器模式还是客户端模式,因为加载webiew离线包必须在设置usergent之后,之前则会弹框报错。一种原因是接口报错,控制台看看有没有接口报错打印。
2023-02-23 10:12:45
468
原创 TMF容器开发中遇到的问题之如何“对桥接进行创建与释放监控”,防止整个viewcontroller无法释放
tmf框架桥接的创建都会走 invokeParameters方法,然后在这个方法打上断点,找到它上层的类及方法名,方法名是JSBridgeXXX这个,类名是invokeParametersXXX。因此对这两个方法进行hook,增加监控逻辑。释放的时候看注释是走complete方法。
2023-02-23 10:03:52
240
原创 iOS文件分享 +_allowedItemPayloadClasses 报错问题
解决办法:仔细检查文件路径,肯定路径多拼或少拼了。分享失败的时候控制台会有如下打印。
2023-02-20 11:34:47
942
原创 TMF开发中遇到的问题之简易方法查看webview容器有没有被释放
然后点击电脑上的Safari浏览器 ----开发 ---找到自己的手机名字,打开的app中的webview加载的链接就会显示出来,关闭后就会一并消失,如果打开后一直存在,说明没有正常释放。然后手机连上电脑打开电脑上的Safari浏览器---设置---高级---在菜单栏中显示“开发”菜单。首先点击手机的设置---Safari浏览器---高级---网页检查器 打开。
2023-02-17 15:11:19
238
原创 TMF容器开发中遇到的问题之iOS16系统下某些webview图片不展示问题
解决办法是找到框架的网络请求类:类似 XXNetwork。原因是iOS16增强了对非标准https的校验。
2023-02-17 14:44:26
312
原创 TMF容器开发中遇到的问题之打开的webview容器经常无法释放
1.是有些桥接调用完没有主动调用finish方法,所有桥接必须调用,不管这个桥接是做啥的,改完这两点基本能解决90%的问题。2.还有就是桥接里面有循环引用。
2023-02-17 14:36:28
108
原创 iOS开发之将NSLog日志展示在app上并将根据不同日志种类设置文字颜色与背景色的日志文件分享到电脑查看
一种代码捕捉NSLog打印的方法是使用宏定义,将NSLog重新定义为一个新的方法,在这个方法里使用全局单例、全局变量数组保存这些打印。因此将日志添加富文本标签,增强阅读性,增加背景色,文字颜色的支持,来使排查日志更方便。将这些数据再写一个tableview展示出来即可在客户端中查看了。有了思路,然后就好办了,选择html的标签将日志文本包装分享出来。但通常日志量都很大,排查问题需要查看大量的日志,搜索也不方便。可以将这些打印日志,写到纯文本里来,分享到电脑上来查看,然后再将其定义为全局方法。
2023-02-17 10:34:32
673
原创 iOS如何查找某个方法、某个方法名、某个字符串是在哪个静态库里声明的、调用的
比如要找UmengUncaughtExceptionHandler这个方法是哪个库里使用的。然后编译的时候会报错,报错信息会告诉你和哪个库里的这个方法重复了。使用hopper只能看到这个方法的实现,看不到它在哪个库里。这时候可以这样做,随便找一个文件声明一个同样的方法。使用find命令有时候找不到。
2022-10-24 11:54:22
544
原创 Domain: com.apple.dt.MobileDeviceErrorDomainCode: -402620403
这是因为用的是绕过id的设备debug,只能换成使用正常激活的手机调试。
2022-09-25 19:39:02
1915
原创 iOS开发之web容器内点击自定义键盘以外的区域收自定义键盘的简单实现
比较好的办法是在键盘的view里面实现- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event方法,通过point可以判断点击的是键盘区域内还是外,在键盘区域外的话收一下键盘,并且也不影响web页面的点击事件。较流行的是使用蒙版,这样整个页面都被蒙版覆盖,点击键盘以外的区域手动关闭,但会有一个问题:原页面的点击事件无法执行。当然这个键盘不是通过获取第一响应弹出的,是addsubview。
2022-09-15 11:49:16
680
原创 iOS开发之iOS15及以上长按输入框点击文本识别,但识别界面不只是键盘区域,而是全屏的,并且会把键盘顶飞的bug解决
代码里面把UIViewController 的 modalPresentationStyle方法给hook了,而且只返回了UIModalPresentationFullScreen,导致所有页面都是以全屏模式展示。判断如果是文本识别的控制器,则调用系统自己的modalPresentationStyle,正常情况下的实况文本,以微信举例,找一个输入框,长按会出现下图按钮(粘贴右边的),点击这个按钮键盘会变成后置摄像头的内容,如下图。识别完之后,键盘显示异常成了空白,如下图。原因是控制器的模态展示代码问题,
2022-09-13 10:08:06
1580
原创 iOS WKWebView网页文字加载完了但过了很久才执行didFinishNavigation该怎么办,我需要在文字的加载完后进行页面操作
1.创建WKWebViewConfiguration的时候注入监听代码$(document).ready(function(){})4.然后在dealwith方法里就可以执行js代码了evaluateJavaScript,获取body,添加标签都可以的。这是因为少量的图片视频没有下载完,但不影响网址文字整体内容查看,原生该如何如何监听呢?2.在这个方法里 和原生交互,调用原生方法,这里以alert为例。研究过程不写了,直接写最终解决方法。...
2022-08-17 17:26:09
1946
原创 iOS实现正弦函数渐变动画,波浪线渐变动画的实现思路
在iOS里面单独的波浪线使用CAShapeLayer设置strokeColor,创建CGMutablePathRef使用正弦函数sin获取y值,连接成点CGPathAddLineToPoint得到一条曲线,然后赋值给图层。这个mask可以控制显示的区域,mask也是layer类型,放一张png格式的渐变图,mask透明并且正弦函数移动,显示的效果就是带渐变的波浪线。在iOS里面单独的渐变使用CAGradientLayer,设置colors,设置locations可以生成渐变的矩形,但不是线,不能动。...
2022-08-04 14:50:03
731
原创 Xcode13.1运行工程报错fatal error: ‘IFlyMSC/IFly.h‘ file not found的问题
原因是路径太深了/Users/yyy/Desktop/代码存放/需求代码存放/SDK/IOS/IOS/IOS/IOSSDKDemo/把工程拖到桌面问题解决。
2022-08-02 14:14:46
713
原创 用swift5 新写一个app需要用到需要考虑的
1.扩展left right top bottom2.设置button,Selector写法 //按钮的点击事件// let btn : UIButton = UIButton.init(type: UIButton.ButtonType.custom)// self.addSubview(btn)// btn.frame = CGRect.init(x: 10, y: 0, width: 100, height: 30)//......
2022-07-15 02:40:36
487
博客的对应代码(sm2加密,未包含模拟器架构,未包含oc调用)
2021-10-20
MyMas.zip 《自己写个比Masonry好用的iOS布局实现 》博客示例代码
2020-06-02
如何更改工程内最少的代码修改系统UISwitch的大小和样式 的示例代码
2017-11-26
html页面如何用iOS的原生控件展示
2017-05-24
iOS中动态密码(倒计时按钮)按钮Block封装,选取器(UIPickerView)的Block封装,日期选取器(UIDatePicker)的Block封装
2017-05-18
iOS点击某个功能按钮需要登录并且登录完成后自动跳转到要去的功能实现方法
2017-05-11
iOS如何present出一个透明导航控制器NavigationController
2017-04-26
在ios中使用c语言的sm2加解密(增加使用自定义私钥解密,增加明文不限制位数,增加04的处理)
2017-03-17
在ios中使用c语言的sm2加解密
2016-08-19
安卓中怎么实现ios 里的block
2017-03-23
苹果开发者账号怎么添加的117台iPhone
2017-03-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人