已经很久没更新博客了。最近在一个iOS项目中,利用到了Obj-C语言的运行时反射特性,来减少一些代码编写的工作量,特记录下来。移动互联网下iOS客户端的开发,一般都会与服务端进行通讯,也会使用到Sqlite数据库来保存一些数据,按常规的搞法,一般都需要手动建表结构,写实体类对象,然后写插入、更新、查询等语句来实现功能,因此想到是否有一种通用的办法来进行一些代码方面的减负工作。通过这个项目的实践,已
# mmap映射大小限制详解 在Kubernetes(K8S)集群中,内存映射(mmap)是一种常见的技术,允许进程直接映射一个文件或者设备到内存中,以便能够直接读写文件内容。然而,对于一个应用程序而言,可能需要限制mmap映射的大小,以防止内存泄漏或者其他潜在的问题。 在本文中,我们将介绍如何在K8S集群中实现mmap映射大小限制,并给出相应的代码示例。 ## 实现步骤 下面是在K8S集
原创 2024-04-29 11:40:08
237阅读
## MySQL索引长度为啥限制 在使用MySQL数据库时,我们经常会使用索引来提高查询性能。然而,你可能会遇到一个问题:为什么索引的长度会有限制?本文将详细解释这个问题,并提供代码示例来帮助理解。 ### 索引长度的定义 在MySQL中,索引是基于数据表中的一列或多列创建的数据结构,可以加快查询的速度。索引的长度是指索引中某一列的最大长度。对于字符串类型的列,长度通常以字符为单位。 #
原创 2023-11-01 04:44:28
142阅读
前言mmap在日常开发中偶尔会遇到的一个关键词,最常用到的场景是MMKV,其次用到的是日志打印。虽然都已经被封装好,但也需要了解下mmap的基本原理和过程。正文进程是App运行的基本单位,进程之间相对独立。iOS系统中App运行的内存空间地址是虚拟空间地址,存储数据是在各自的沙盒。当我们在App中去读写沙盒中的文件时,我们会使用NSFileManager去查找文件,然后可以使用NSData去加载二
再也不用羡慕华为的「多屏协同」了。前段时间,极客之选曾经写文章讨论过手机和电脑的关系变迁史,我们认为在当前状况下,两者最有可能的发展方向就是走向融合,类似华为多屏协同的概念。它把文件传输、跨屏复制、屏幕镜像等思路结合在了一起,让手机和电脑可以实现更顺畅的信息互通。不过这种深度的融合需要在底层做很多优化,厂商需要对硬件、软件有一定的掌控,目前能把整体体验做得不错的只有华为。最近,极客之选发
之前有朋友问我,自己的手机突然下载不了 App 是怎么回事,我第一反应是服务器抽风,或者是 WiFi 网络不稳定,她说是用流量下载,我说苹果系统限制大容量App不能用流量下载。2017年9月,限制从 100M 扩大到150M,2019年5月下旬,苹果公司把这个蜂窝流量限制放宽到200M,这个限制是避免用户超出运营商套餐流量。当时只知道苹果 iOS 设备规定蜂窝移动网络(流量)不能下载大容
        苹果今日向 Mac 电脑用户推送了 macOS 13.4 更新(内部版本号:22F66),本次更新距离上次发布隔了 41 天,主要解决了与Apple Watch自动解锁、蓝牙键盘、屏幕使用时间和VoiceOver相关的问题,推荐大家安装升级。镜像下载:微信公众号:MacOS Ventura 13.4 (22F66) 带 OC 引导双分区黑苹果
转载 2023-10-11 15:24:56
160阅读
# 限制Docker映射端口的iptables 在Docker中,我们可以使用iptables来限制Docker容器的映射端口。本文将介绍如何使用iptables来实现这个目标,并提供相应的代码示例。 ## 什么是iptables? iptables是一个用于Linux操作系统上的包过滤器和网络防火墙工具。它允许我们通过在网络流量中添加、删除和修改规则来控制网络连接的流向。使用iptable
原创 2023-10-29 06:49:33
502阅读
# 真机调试在iOS开发中的流程指导 在iOS开发中,真机调试是一项非常重要的技能,它能帮助我们更好地测试和优化应用的性能。然而,对于刚入行的小白开发者而言,可能会对这一过程感到困惑。本文将详尽地讲述真机调试的流程、所需步骤及注意事项,并提供代码示例,帮助你顺利实现真机调试。 ## 流程概述 在讨论具体步骤之前,首先我们来看一下真机调试的整体流程: | 步骤 | 描述
原创 9月前
33阅读
# 映射iOSiOS开发中,我们经常需要对数据进行处理和展示。而映射(Mapping)则是一个常用的技术,用于将一种数据结构映射到另一种数据结构。在本文中,我们将介绍在iOS开发中如何进行数据映射,并给出示例代码。 ## 什么是映射映射是将一个数据结构转换成另一个数据结构的过程。在实际开发中,我们可能需要将服务器返回的JSON数据映射成我们需要的模型对象,或者将模型对象映射成界面所需的数
原创 2024-06-24 04:03:22
48阅读
第一章   函数与极限第一节 映射与函数一:映射1,映射概念 定义:设X,Y是两个非空集合。如果存在一个法则f使得对x中的每个元素x按法则f在y中有唯一的元素y与之对应,那么就称f为从x到y的映射,记作f: x->y.像:y为x在f下的像。原像:x为y(在映射下)的原像。集合x为f的定义域,记作Df即Df=x,x中所有元素的像所组成的集合称为映射f的值域记为Rf或者f(x
转载 2023-09-28 11:27:00
219阅读
最近邮件服务器被攻击,所以用iptables把所有端口都关了,然后再一 一打开在用服务要用的端口,查了一下iptables的简单用法,在此记录一下:开放不连续端口(包括单个):iptables -A INPUT -p tcp -m multiport --dport 21,20 -j ACCEPT其他都关闭:iptables -A INPUT -p tcp -j REJECT --reject-w
转载 2024-03-11 17:38:28
109阅读
QtScrcpy 可以通过 USB / 网络连接Android设备,并进行显示和控制。无需root权限。同时支持 GNU/Linux ,Windows 和 MacOS 三大主流桌面平台。它专注于:精致 (仅显示设备屏幕)性能 (30~60fps)质量 (1920×1080以上)低延迟 (35~70ms低延迟)快速启动 (1s 内就可以看到第一帧图像)非侵入性 (不在设备上安装任何软件)自定义按键映
转载 2023-11-15 22:01:32
2565阅读
据国外媒体今日报道,苹果宣布对开发授权协议进行修改,限制开发者在开发iPhone和iPad应用时使用的工具。苹果这一做法引起了开发者的不满。此前,苹果的开发者可以自由使用各种工具来开发应用。修改授权条款之后,苹果将开发者使用的工具限制为3种。苹果这一做法引起了许多开发者的不 满,一些开发者宣称,他们将不再为苹果产品开发应用。 苹果表示,这一举措是为了改进App Store应用商店中的
# Docker映射目录限制目录大小 ## 什么是Docker? Docker是一种容器化技术,可以帮助开发者将应用程序和其依赖项打包到一个独立的容器中,从而实现跨平台的部署。Docker的一个重要特性就是可以使用数据卷来将宿主机上的目录映射到容器中,实现数据的共享和持久化存储。 ## Docker映射目录 在Docker中,可以使用`-v`参数来映射宿主机上的目录到容器中,例如: ``
原创 2024-04-10 03:38:47
284阅读
  iphone下每个app可用的内存是被限制的,如果一个app使用的内存超过20M,则系统会向该app发送Memory Warning消息。收到此消息后,app必须正确处理,否则可能出错或者出现内存泄露。      app收到Memory Warning后会调用:UIApplication::didReceiveMemory
转载 2023-11-05 23:47:29
401阅读
 网络权限管理一、iOS网络情况分类:通过App应用设置网络使用权限(关闭、WLAN、WLAN与蜂窝移动网)直接设置手机网络情况(飞行模式、无线局域网络、蜂窝移动网络)二、iOS开发使用到的网络判断类:AFNetworkReachability或者Reachability来判断网络的可达性,这两个类可以判断网络是否可达,以及可达时网络的类型(WLAN还是蜂窝移动网络);CTCellul
转载 2023-09-07 22:39:09
718阅读
映射端口范围不能使用:1~1024 (除 80 443), 5000~5100, 6000~6999, 10000~20000, 31000~32000 映射端口可能与 Chrome 冲突: 6665~6669 映射端口已被占用: 8090,8099,9011,9988 映射端口输入0为随机分配
原创 2024-08-15 13:54:16
22阅读
# iOS开发找工作的挑战与解决方案 作为一名新手开发者,面对iOS开发的工作机会可能会感到迷茫和困难。“iOS为啥难找工作”这个问题,实际上是在探讨技能的准备、项目经验的累积、简历的制作等多个方面。本文将通过流程表、代码示例以及甘特图,帮助你了解如何逐步提升自己的iOS开发技能,增强找工作的竞争力。 ## 一、整个流程 我们可以将寻求iOS工作机会的过程分成几个主要步骤,具体如下: |
原创 2024-09-21 06:42:01
109阅读
[思路网注]  过去这些年,HTML5颠覆了PC互联网的格局,优化了移动互联网的体验,接下来,HTML5将颠覆原生App世界。这听起来有点危言耸听,但若认真分析HTML5的发展史,你会发现,这个世界的发展趋势确实就是这样。 2007年W3C(万维网联盟)立项HTML5,直至2014年10月底,这个长达八年的规范终于正式封稿。 过去这些年,HTML5颠覆了PC互联网的格局,
  • 1
  • 2
  • 3
  • 4
  • 5