写得很好,有demo吗😄
iOS防重签名背景: 我们的app发布后,有可能给别人砸壳然后进行重签名。为了加强安全性,我们现在对app进行防重签名的防护。接下来我们一起探讨一下如何防止别人重签名我们的app。本文防重...
写得很好,有demo吗😄
iOS防重签名背景: 我们的app发布后,有可能给别人砸壳然后进行重签名。为了加强安全性,我们现在对app进行防重签名的防护。接下来我们一起探讨一下如何防止别人重签名我们的app。本文防重...
文章以在TimerViewController中使用计时器为例,在VC中声明一个NSTimer属性。 创建NSTimer对象: timer作为VC的属性,被VC强引用,创建t...
本文首发于我的个人博客:「程序员充电站」[https://itcharge.cn]文章链接:「传送门」[https://itcharge.cn/ios-complete-le...
结合公司需要,参考网上分享者的文章和自己的实际操作,记录下模块化开发的过程,以免自己忘记,也希望能帮助到需要的人。 1、创建 私有Spec Repo 所谓Spec Repo,...
面试题 讲讲 RunLoop,项目中有用到吗? RunLoop内部实现逻辑? Runloop和线程的关系? timer 与 Runloop 的关系? 程序中添加每3秒响应一次...
Runloop 是和线程紧密相关的一个基础组件,是很多线程有关功能的幕后功臣。尽管在平常使用中几乎不太会直接用到,理解 Runloop 有利于我们更加深入地理解 iOS 的多...
参考篇:iOS-Block浅谈 前言:本文简述Block本质,如有错误请留言指正。 第一部分:Block本质 Q:什么是Block,Block的本质是什么? block本质上...
NSMutableArray对象初始化后为它分配了一个起始内存地址和size,而往数组添加数据只是往这块内存添加一个个数据的地址,地址指向添加的数据,而MutableArray对象起始地址不变,只改变了size,所以没有改变则不用修饰。
iOS-Block本质参考篇:iOS-Block浅谈 前言:本文简述Block本质,如有错误请留言指正。 第一部分:Block本质 Q:什么是Block,Block的本质是什么? block本质上...
1.检查你AppDelegate需要的代码 是不是按文档来写的
2.离线消息打包到TestFlight去测试
iOS腾讯IM集成公司最近项目从JMessage到Tencent IM,使用到的腾讯IM。本篇文章会介绍下集成步骤和注意事项。 1.SDK集成 SDK集成我没有使用CocoaPods,因为每次...
1.简介 用来选择范围性的数据slider用于选择连续性的或者非连续性的数据。默认是在一段最大值最小值间做任意值的选择。如果你想选择间隔性的值,给division设置一个非空...
1.简介 Material Design 风格的单选按钮附加文字label点击文字同时,将会触发Radio的点击效果 2.示例代码
1.Text 简介 具有某个单一样式的文本显示widget组件,显示支持一行或者多行。默认样式会继承层级最为接近DefaultStyle,当然你也可以重新定义他的样式将Def...
1.简介 Dropdown button 用于从项目列表中选择的按钮 参数类型T时下拉菜单表示的值的类型。给定菜单中的所有条目必须具有一致的类型。 2.示例代码
1.IconButton IconButton widget上的图片,通过填充颜色来对触摸作出反应 图标按钮通常在AppBar.actions字段中使用,但它们也可以用在其他...
1.简介 RaisedButton基于Material Widget ,按下button时,Material.elevation会增加; 使用Raised button可将尺...
1.简介 通过填充颜色对触摸作出反应在工具栏上; FlatButtons故意不具有可见边框,因此必须依赖于它们相对于其他内容的位置以用于上下文; 在对话框和客片中,它们应该组...