- 博客(463)
- 资源 (26)
- 问答 (28)
- 收藏
- 关注
原创 2020年12月 C/ObjC/Swift混合编写开发的原理/使用/注意事项
1.Swift 5.32.Xcode 12.00x00 为什么要用Swift?1.Swift是趋势,Apple推荐,关键是5.0版本的ABI语法已经成熟固定了2.支持泛型、Optional、guard、differ、类型自动推导3.相同的功能,Swift编写的代码量比ObjC要少一半,运行效率比ObjC高2.6倍4.开源、跨平台,等等0x01 开发篇问1:在ObjC代码里如何调用Swift?在.h/m文件里导入头文件,例如:ProductModuleName叫做Apple,那么头文
2020-10-19 11:07:52 569
原创 unix:///tmp/supervisor.sock no such file 使用supervisorctl status时
错误信息:unix:///tmp/supervisor.sock no such file解决方案尝试以下这些https://www.jianshu.com/p/3fe84e259ef9supervisord -c /etc/supervisord.confsupervisorctl或者这个https://github.com/Supervisor/supervisor/issues/480
2020-09-08 11:38:48 307
原创 牛客网算法题:给定一个字符串,计算从做到右的字符出现的个数
题目:给定一个字符串,计算出从做到右的字符出现的个数忽略字符计算后个数为1的数字例如原始输入字符串:"aabccccaaa"期望输出: “a2bc4a3”解释:从左到右,a出现了2次,记为a2;b出现了1次,记为b;c出现了4次,记为c4;再a出现了3次,记为a3。结果就是:a2bc4a3以Swift语言实现如下class TestA: NSObject { private var lowerLetters: [String: Int] = ["a":0, "b
2020-08-31 11:47:20 505
原创 pod install和pod update的区别(官方解释,通俗易懂)
这是官方文档 英语好的可以自己看,我这里给你总结下pod install就是说,当你在项目中的Podfile配置文件中添加、删除、或者更新版本号时使用,也就是用来安装新Pod,删除pod,或者根据你设置的pod版本号来安装安装完后,会自动生成Podfile.lock文件,该文件记录着Podfile配置的所有Pod的版本信息,依赖库信息,和pod库的checksum(校验码)所以当你下次运行pod install时,已经安装过的pod就不会再次去下载安装,也不会更新已有的pod库。pod updat
2020-08-11 12:44:05 4679
原创 iOS启动优化/耗电优化
一、启动优化1.pre-main阶段我们可以通过苹果提供了XCode内建的测量方法,1.点击项目名称2.Edit scheme...3.左侧Run4.中间顶部菜单Auguments5.在Environment Variables中添加一个环境变量DYLD_PRINT_STATISTICS,并设为 1再次运行项目,会得到以下输出主要分为3个加载阶段1.加载应用的可执行文件(app自身的所有.o文件集合)2.加载动态链接器dyld(dynamic loader一个专门用来加载动态链
2020-08-10 13:23:21 626 1
原创 C语言旋转数组-转圈打印数组
// 旋转数组void rotateArray(size_t rows, size_t cols, size_t arr[4][4]) { size_t rotated[rows][cols]; for (size_t i = 0; i < rows; i++) { for (size_t j = 0; j < cols; j++) { // rotated[i][j] = a[n - j - 1][i]; // 顺时针翻转
2020-08-06 20:57:50 1050
原创 单链表的翻转
单链表的翻转// 链表定义struct SingleLinkedList { int value; struct SingleLinkedList *next;};// 打印链表中的数据void printAllNodes(struct SingleLinkedList *head) { printf("%d \t", head->value); if (head->next == NULL) { return; } p
2020-08-06 20:55:35 237
原创 二叉树的遍历/递归/非递归/翻转
二叉树的定义// 定义一个二叉树节点struct BiTreeNode { int value; struct BiTreeNode *left; struct BiTreeNode *right;};先序遍历 (递归的形式)void preOrderTraversal(struct BiTreeNode *node) { if (node != NULL) { printf("%d", node->value); // 先序遍历
2020-08-06 20:45:36 245
原创 iOS卡顿检测方案
方案一:基于RunLoop主线程绝大部分计算或者绘制任务都是以Runloop为单位发生。单次Runloop如果时长超过16ms,就会导致UI体验的卡顿。那如何检测单次Runloop的耗时呢?Runloop的生命周期及运行机制虽然不透明,但苹果提供了一些API去检测部分行为。我们可以通过如下代码监听Runloop每次进入的事件:- (void)setupRunloopObserver{ static dispatch_once_t onceToken; dispatch_once(&a
2020-08-06 16:03:09 1301
原创 iOS的文件校验码生成 - ObjC编写
一般我们比较文件的完整性,就是对文件进行哈希计算,通常就是MD5或者SHA256或者SHA1计算,如果生成的结果字符串是一样的,则表明文件没有被篡改比如我们在网络上下载的安装包,下载时都会提示MD5或者SHA1的校验码是多少?有没有想过校验码是如何生成的了?以下就是用Objective-C来对文件计算checksum即校验码是否 服务器端存储的一致,如果是一致的,则表示文件是完整的#import "FileChecksumUtil.h"#import <CommonCrypto/CommonDi
2020-08-05 21:30:34 371
原创 强行在CentOS上kill python进程 unix:///tmp/supervisor.sock
问题:unix:///tmp/supervisor.sock解决方案:echo_supervisord_conf > /etc/supervisord.confsudo supervisord -c /etc/supervisord.confsudo supervisorctl statushttps://stackoverflow.com/questions/20067116/supervisorctl-error-unix-var-run-supervisord-sock-refuse
2020-07-24 23:59:28 983
原创 iOS的App的崩溃收集和类型解释 ObjC/C/Swift语言都可以拦截
在Unix系统中标准的6种信号:SIGABRT: 表示程序异常终止,英语单词即Signal AbortSIGFPE: 表示浮点数异常错误,英语单词即Signal Floating Point ExceptionSIGILL: 表示无效指令/操作,英语单词即Signal IllegalSIGINT: 表示交互式注意请求发送到了程序引起了中断,英语单词Signal InterruptSIGSEGV: 表示无效的内存访问,英语单词是Segmentation ViolationSIGTERM: 表示终
2020-07-08 16:02:11 1370
原创 FFmpeg快速压缩,短视频秒播,视频流m3u8生成
FFMpeg快速压缩test.mp4是视频地址libx264表示视频编码格式为H.264crf 表示控制转码,18-28比较合理,18表示无损压缩,28表示有损的压缩,28压缩出来的视频会模糊test_compressed.mp4表示压缩后的视频路径ffmpeg -i test.mp4 -vcodec libx264 -crf 22 -preset veryfast -c:a copy test_compressed.mp4短视频秒播需要将视频的metadata前置,就可以让app中的播
2020-07-01 18:22:41 3396
原创 全球5大云计算厂商的全球部署的节点图
Google全球节点(没有非洲区域)https://cloud.google.com/about/locations/阿里巴巴全球节点(没有非洲区域)https://www.alibabacloud.com/zh/global-locations亚马逊AWS (在非洲开普敦,是2020年新推出的)https://aws.amazon.com/cn/about-aws/global-infrastructure/微软云(在南非洲西部和南非洲北部地区两个节点)https://azure.mi
2020-06-11 11:19:23 1897
原创 ERROR: Failed building wheel for pycrypto : CentOS
我的系统环境:CentOSPython环境:Python3问题:ERROR: Failed building wheel for pycrypto解决方案:在CentOS命令行里安装yum install gcc gcc-c++ python3-devel pycrypto其实之前我已经安装过python-devel,默认是Python2,而我用的是Python3环境,所以需要去安装python3-devel,如果你的项目是通过virtualenv管理包的,那就去激活你的virtualen
2020-05-27 11:15:35 4261
原创 AWS用Lambda搭建一个无服务的图片鉴黄Restful API,不超过10行代码
目的无需购买服务器搭建一个图片鉴黄接口 (Python语言)Lambda介绍 : https://aws.amazon.com/cn/lambda/AWS的Lambda控制台首页: https://console.aws.amazon.com/lambda/home图片鉴黄文档:https://docs.aws.amazon.com/zh_cn/rekognition/latest/dg/procedure-moderate-images.html1.创建函数选择第一个:从头开始创作 --&
2020-05-24 20:55:58 4828
原创 unix:///tmp/supervisor.sock no such file
执行以下命令sudo service supervisord restart
2020-05-07 19:57:45 216
原创 iOS 操作触感震动 tab点击震动 按钮点击震动
其实很简单,主要是系统提供的几种震动方式主要在这个AudioTool.framework里#import <AudioToolbox/AudioToolbox.h>一般震动AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);普通短震(类似3D Touch的 Peek 反馈 )AudioServicesPlaySyst...
2020-04-25 11:35:01 4455
原创 免费的Google翻译API接口
free-google-translateFree Google Translator API 免费的Google翻译,其中的破解思路主要来源于将 https://translate.google.cn 的web访问方式模拟成全部代码的形式来控制api的访问注意事项1.大量的相同IP请求会导致Google翻译接口返回 429 Too many requests建议处理方案:每一个app...
2020-04-23 22:17:32 47292 14
原创 iOS实现左侧滑动菜单
先来一个Demo实现地址:https://github.com/VictorZhang2014/LeftMenuDemo类似滴滴app再来个动画演示下左滑菜单主要实现功能的类文件是BDLeftMenuView.hBDLeftMenuView.m使用方法如果是Objective-C,先导入头文件#import "BDMainNavigationBar.h"如果是Swift和O...
2020-04-19 18:52:11 2313
原创 Xcode DeviceSupport iOS 13.4.1 (17E262)
下载地址:https://github.com/filsv/iPhoneOSDeviceSupport各种版本都有重启Xcode就好了
2020-04-15 19:41:17 6853 1
原创 我的新书《深度学习训练营 - 21天实战》出版了!!!
我把自己想象是一个软件、一段代码,今天的版本一定要比昨天好,明天的版本肯定会比今天好!— By 陆奇《深度学习训练营 - 21天实战》终于在疫情即将结束时出版了!非常感谢主编们以及出版社的相关负责人的辛勤付出!????衷心的感谢沈老师、郭教授、领导们、同事们、家人和朋友的支持与点评!????????在人工智能领域,很多时候,我们都是站在巨人的肩膀上做创新、搞发展、实现落地应用。深度学习领域最难啃的花书《深度学...
2020-04-12 15:19:29 1277 6
原创 HTTPS原理-使用-请求拦截-防止拦截-动态调试HTTP请求
HTTPS (全称:HyperText Transfer Protocol over Secure Socket Layer)Google 很早就使用了HTTPS,主要是为了保证用户的数据安全。 Google、Baidu、Facebook 、字节跳动这样的互联网巨头,都在广泛使用HTTPS搭建网站、接口、服务等, 国内外的大型互联网公司很多也都已经启用了全站 HTTPS,这也是程序员学习http...
2020-04-10 15:16:19 9658 1
原创 unix:///tmp/supervisor.sock no such file
supervisorctl 总是报错 unix:///tmp/supervisor.sock no such file解决方案Supervisor有一个issue里讲到了https://github.com/Supervisor/supervisor/issues/121https://github.com/Supervisor/supervisor/issues/376尝试一下命令即可...
2020-04-01 14:11:30 286
原创 最新H5网页分享到Twitter、Facebook带缩略图
Twitterhttps://twitter.com/intent/tweet?text=Work queue with Go and RabbitMQ by @masnun https://link.medium.com/5ayv7VMv04
2020-03-25 17:07:01 10708 2
原创 100%有效的安装brew和ffmpeg
第一步:安装HomeBrew/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"第二步:安装ffmpegbrew install ffmpeg查看ffmpeg
2020-03-11 22:25:21 4327
原创 Xcode 11无法成功安装Cocoapods的原因和解决方案: mkmf.rb can't find header files for ruby at xxx
错误信息mkmf.rb can't find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/include/ruby.h我主要是新买的macbook pro,安装了XCode 11,然后就遇到这个安装Cocoapods的错误,之前从来没有遇到过后来经...
2020-03-04 20:15:26 1874
原创 PyExecJS Runtime Error: Could not find an available JavaScript runtime.
报错信息:我的服务器是CentOS我的项目使用Python + Tornado构建,最后部署到服务器上时遇到js运行时错误,网上说没有安装nodejs,所以我按照以下步骤安装好后,重启supervisorctl的进程服务,然后就顺畅运行了解决方案依次安装nodejs,按照以下步骤第一步:安装gcc-c++yum install -y gcc-c++ make第二步:下载并安装n...
2020-03-03 20:23:25 2550
原创 10、以太坊智能合约开发(编写智能合约的安全性相关和注意事项)
Ethereum有两个账户第一种:合约账户(contract accounts) 可以接收、和持有资金,但是不能转账,因为没有private key第二种:外部拥有账户(externally owned accounts)可以对资金进行接收、持有、和转账,有private key应该要知道的1.payable关键字表示该函数可以接收funds2.msg.value关键字表示接收...
2020-02-04 18:57:51 743 3
原创 9、以太坊智能合约开发(暂停运行合约和合约升级)
暂停正在运行的智能合约为什么要暂停正在运行的合约?答:Stop Loss(及时止损)。假如智能合约编写的有重大bug,会引起合约里的财产被盗、钱被偷了,由于区块链具有不能变性(Immutability),部署到mainnet上的合约一旦生成就是固定的了,遇到这种bug,我们一定要提前在合约里设计好规则,比如提供可设置合约可用性的函数,使得合约里的所有函数,或者跟转账、提款等重要的函数进行约束暂...
2020-02-04 18:44:52 1000 1
原创 8、以太坊智能合约(IPFS的基础使用)
IPFS官网:ipfs.ioIPFS是一个peer-to-peer的超媒体协议,发明的目的是替换现有的HTTP协议,使得Web更快、更安全、更开放。IPFS的全称是星际文件系统(InterPlanetary File System) ,具备基本Web 2.0时代的功能和特性,也开启了Web 3.0时代!对于HTTP 2.0的时代,客户端向服务器发送一个请求,服务器返回一个响应结果,涉及的技...
2020-02-02 22:12:58 2078
原创 7、以太坊智能合约(安全审计 和 测试工具)
安全审计 Security Audits当你开发完智能合约后,可以交给专业的团队或者机构来审核你的智能合约,报告会指出有哪些漏洞?该如何修复等Open ZeppelinCoinFabrikQuillhash 测试工具Manticore 支持EVM的动态二进制分支工具Input Generation: Manticore自动生成输入来触发独立的代码路径Error Di...
2020-02-01 18:39:17 3597 1
转载 以太坊智能合约 network id 列表
0: Olympic, Ethereum public pre-release PoW testnet1: Frontier, Homestead, Metropolis, the Ethereum public PoW main network1: Classic, the (un)forked public Ethereum Classic PoW main network, ...
2020-01-28 17:16:57 1688
原创 5、以太坊智能合约开发(使用OpenZeppelin编写Token合约)
OpenZeppelin 是一个在以太坊上编写智能合约的库。在这里可以找到很多的Token合约的实现https://github.com/OpenZeppelin/openzeppelin-contracts/tree/master/contracts/token这些文件夹里就有不同的token合约的实现,是属于OpenZeppelin官方的实现步骤1.创建一个空目录OpenZepp...
2020-01-21 20:44:58 1341 3
原创 4、以太坊智能合约开发(自己编写ERC-20的Token合约)
What are Tokens?Ether 是以太坊的本土货币,用于智能合约Tokens 是构建在以太坊平台上用于在不同的机构或实体之间基于一些指定的规则来交换价值的token的智能合约智能合约被用来创建tokens,这些智能合约也促进了tokens的交易,和tokens的账户余额记录。当一个Token被创建后,该token就可以用来交易、花销、和转账给别人什么是Token ...
2020-01-15 11:44:41 2236
原创 3、以太坊智能合约开发(语法开发学习)
Smart Contracts 智能合约什么是智能合约?答:a. It’s a piece of code that lives on the blockchain network.b. A self operating computer program that automatically executes when certain conditions are metc. It ca...
2020-01-08 11:04:50 623 1
原创 2、以太坊智能合约开发(宠物收养DApp)
本篇教程将带您完成一个DApp应用 - 宠物商店的收养追踪系统在开始之前,本篇教程需要读者了解基本的以太坊和智能合约的基础知识,并且掌握基础的HTML和JavaScript的知识。在这篇教程中,我们会讲到:1.设置开发环境2.使用Truffle box来创建一个Truffle项目3.编写智能合约4.编译和迁移智能合约5.测试智能合约6.创建与智能合约交互的用户界面7.在浏览器...
2020-01-02 14:44:13 1111 1
原创 适配 iOS 13 设置 deviceToken
在 iOS 13 之前的版本使用下面代码可以将获取到的 deviceToken,转为 NSString 类型,并去掉其中的空格和尖括号,作为参数传入 setDeviceToken: 方法中。- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSDat...
2019-12-27 21:05:03 1435
原创 超级简单的WebSocket的聊天应用
超级简单的WebSocket的聊天应用1.定义消息类型2.定义WebSocket的实例类型3.定义聊天消息model4.定义Socket连接、发送消息、发送心跳类5.定义发布订阅类,用于新消息来了立即发布接收到的消息到相关的页面6.实现网页打开时,连接服务器;关闭页面时,断开socket连接7.收到消息后,发送浏览器外的通知效果预览:https://web.yooul.com/ch...
2019-11-23 12:49:24 781 2
io.flutter.zip
2021-07-23
程序员英文简历模板
2019-09-19
VS2010中文语言包32位和64位
2019-06-09
dotNetFx40LP_Full_x86_x64zh-Hans.zip
2019-05-22
Newtonsoft.Json专为.Net 2.0、3.5、4.0和4.5
2019-05-12
EasyUS Data Recovery 数据恢复Mac版
2017-06-23
Mac版数据恢复软件破解版(Disk Drill)
2017-06-23
iFunBox for iOS
2017-06-02
class-dump official version
2017-04-16
Could not find Developer Disk Image iOS 9.3下载
2016-03-22
vs2010+C#能开发出Win7和WinXP运行的程序吗?
2019-04-29
微信支付提示:调用支付JSAPI缺少参数:total_fee
2019-02-10
typedef void Node; 这行代码怎么叫?它的意思是什么?
2016-08-10
iOS放大镜完整APP,不知道怎么做
2016-03-21
Apple Pay的收款人怎么编写代码
2016-03-10
升级EI Capitan后,XCode6.1就不能编译成功了,怎么解决
2016-02-15
Objective-C和Swift怎么开发VR应用
2016-02-15
iOS开发UIWebView怎么开启一个新的标签页
2015-12-11
Yosimite系统安装了xcode5.1怎么运行iOS6模拟器
2015-10-01
自己下载IOS模拟器怎么添加到XCODE?
2015-09-27
iOS开发中的.m文件编译后,是什么格式的文件?可以被反编译吗?
2015-09-19
safari浏览器插件extension开发,一定要交99美金吗
2015-08-29
chrome浏览器插件自动安装
2015-08-28
C语言编写获取当前系统所有正在运行的应用程序
2015-08-23
NSSet,NSDictionary,是属于链表结构存储的数据吗
2015-08-21
OC中的结构体变量和结构体指针变量的区别
2015-08-18
..//这样的路径是什么意思
2015-06-16
-1,-4,6,-1,2,-3,2,0,2......具体如下,可以找出规律来吗
2015-06-09
知道了高德地图的某个位置的经纬度,如果查出具体位置?
2015-06-07
ASP.NET两个网站的cookie信息如何共享
2015-04-30
C#控制台程序怎么发布
2015-03-04
在C#中的客户端编程中,我需要读取项目的一个文件的,该怎么读取?
2015-02-26
Visual Studio查找与替换时,如何不让它 打开页面
2015-02-04
win7的消息队列怎么用,比如使用C#
2015-01-20
C#连接数据库的不知道哪个出错了
2014-01-22
TA创建的收藏夹 TA关注的收藏夹
TA关注的人