6 袋鼠_文

尚未进行身份认证

我要认证

不为过去蹉跎,珍惜当下.

等级
TA的排名 9w+

WKWebView详解&WKWebVieW和JS交互

开发App的过程中,常常会遇到在App内部加载网页,通常用UIWebView加载。而这个自iOS2.0开始使用的Web容器一直是开发的心病:加载速度慢,占用内存多,优化困难。如果加载网页多,还可能因为过量占用内存而给系统kill掉。各种优化的方法效果也不那么明显iOS8 以后,苹果推出了新框架 WebKit,提供了替换 UIWebView 的组件 WKWebView。各种 UIWebView 的性能问题没有了,速度更快了,占用内存少了,体验更好了,下面列举一些其它的优势:1、在性能、稳定性、功能方面有很.

2020-07-01 11:16:01

metal基础

整体渲染过程MTLDevice代表GPU设备,提供创建缓存、纹理等的接口;MTLCommandQueue 用于组织命令缓冲区以供GPU执行的队列。MTLCommandBuffer 一个容器,用于存储编码的命令以供GPU执行。MTLCommandEncoder 将GPU命令写入命令​​缓冲区的编码器。CommandQueue、CommandBuffer、CommandEncoder的关系顶点渲染过程MTLLibrary Metal着色器功能的集合。MTLRenderPipelineSt

2020-06-29 19:24:23

使用Jenkins 遇到的坑

1.插件安装失败更新中心镜像设置修改更新中心的地址为 https://updates.jenkins-zh.cn/update-center.json2.调用Xcode失败xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Develop...

2020-04-22 16:08:13

Jenkins Xcode 插件应用

Jenkins的安装可以参考我的另一篇博文Jenkins的安装和删除1.安装xcode插件插件管理 -- 可选插件 中搜索Xcode integration选中直接安装2.应用1)、新建一个项目2)、General -- 描述: 项目描述3)、源码管理 -- Git 输入仓库URL指定分支,我的是直接访问的钥匙串,如果出现报错可以直接添加Cr...

2020-04-22 15:59:21

Jenkins安装和删除

1.brew 安装$brewinstallJenkins2.命令行启动Jenkins$ jenkins3.浏览器打开http://localhost:8080/4.获取密码$sudo cat /Users/***/.jenkins/secrets/initialAdminPassword5.安装推荐插件安装推荐插件,可能会失败,大多是因为网络的问题,,多试几...

2020-04-22 15:25:11

Jenkins笔记

一、安装运行1.brew 安装$brewinstallJenkins2.命令行启动Jenkins$ jenkins3.浏览器打开http://localhost:8080/4.获取密码$sudo cat /Users/***/.jenkins/secrets/initialAdminPassword5.安装推荐插件安装推荐插件,可能会失败,大...

2020-04-16 16:28:44

Jenkins安装插件超时

Jenkins自动打包ios工程详细使用方法可参考这一篇博文,我在此不做赘述,这里主要写一下遇到的报错1.安装好选择推荐插件安装,部分插件安装失败,其实是大部分安装失败,点开monitor一看全是爆红,一版滑不到底,究其原因就是依赖没有加载成功,点击纠正,进入可选插件,直接搜插件的名称,直接安装直接安装插件还是失败java.net.SocketTimeoutException...

2020-03-27 22:55:26

全局gitignore_global导致文件被忽略

在用GitHub Desktop上传工程时,发现.xcodeproj工程文件没有传到远程仓库,使用 git add 命令行添加又报错,****:Petrel roo$ git add Petrel.xcodeprojThe following paths are ignored by one of your .gitignore files:Petrel/Petrel.xcodeproj...

2020-03-27 09:51:02

URLNavigator应用及源码解析

应用集成pod 'URLNavigator' 创建NavigationMap文件 将视图注册到URL模式navigator.register("petrel://douban") { url, values, context in return DouBanViewController()}在didFinishLaunchingWithOptions方法中初始化...

2020-03-26 12:21:36

URLNavigator应用及源码解析

### 集成``` pod 'URLNavigator'```### 应用1. 创建`NavigationMap`文件2. 将视图注册到URL模式```navigator.register("petrel://douban") { url, values, context in return DouBanViewController()}```3. 在`didFi...

2020-03-26 09:26:26

iOS开发之网络安全

篡改数据客户端通常会保存uid,访问接口时传入uid告诉服务器是谁访问。那么引出了最初级的安全问题,如果我们仅仅只信任uid那一旦修改这个参数值就可以篡改别的用户数据了。 使用token,在用户登录成功服务端返回uid和token,客户端访问服务器时提供这两个参数,uid区别唯一性,token验证合法性。这样即使修改了uid,对应的token不一致也无法成功。 使用https,...

2020-03-10 11:27:09

iOS耗电量检测与优化

一、耗电量检测1、进入手机"设置"->"电池",可以直观的看出来手机应用的耗电情况。image.pngimage.png2、使用Xcode打开你的工程,然后插上手机,使用真机running项目(必须是真机),然后command+6,点击Energy Impactimage.png蓝色表示--合理 黄色--表示程序比较耗电 红色--表示仅仅轻度 ...

2020-03-10 11:07:53

App启动优化

App启动的三个阶段:main()函数执行前; main()函数执行后; 首屏渲染完成后。main()函数执行前加载可执行文件 加载动态链接库 Objc运行时初始处理,相关类的注册、category注册、selector唯一性检查等 初始化,执行+load()方法、__attribute__((constructor))修饰的函数调用、创建c++静态全局变量此阶段优化方案:...

2020-03-05 14:05:13

iOS卡顿监测方案总结

整理了一下iOS中卡顿监测的那些方案,不了解卡顿的原理的可以看这篇文章iOS 保持界面流畅的技巧,写的很好。FPSFPS (Frames Per Second) 是图像领域中的定义,表示每秒渲染帧数,通常用于衡量画面的流畅度,每秒帧数越多,则表示画面越流畅,60fps 最佳,一般我们的APP的FPS 只要保持在 50-60之间,用户体验都是比较流畅的。监测FPS也有好几种,这里只说最...

2020-03-05 12:07:02

1 duplicate symbol for architecture armv7

duplicate symbol _registerTag in: /Users/bear/Library/Developer/Xcode/DerivedData/CarShare-aocjqpzrgbdimnfzsvvibtngyved/Build/Intermediates.noindex/XXXX.build/Debug-iphoneos/XXXX.build/Objects...

2019-09-11 10:50:26

项目引入 protobuf 历程

最近在做出行类的项目,需要socket上传分发 location 数据,之前都是json数据,现在要改成protobuf,头一次听说这个东东,下面是搜到的一些内容,然后写了一个demo,用Python实现了一个简单的socket 服务端,简单实现发送分发protobuf数据。闲话少说,让我们先了解一下protobuf是什么protocol buffers 是一种语言无关、平台无关、可扩展的序列...

2019-09-10 15:21:18

cocoapods 引入 三方库 历程

在已有的工程中没有使用 pod, 新建一个demo手动导入protobuf时报错GPB文件找不到,直接使用pod导入没有出现类似错误,所以就在项目工程中引入pod去集成protobufplatform :ios, '8.0'use_frameworks!source 'https://github.com/CocoaPods/Specs.git'target 'Project' do...

2019-09-10 10:21:54

vapor 之 Router

Swift vapor3 - API与Router这里有一篇博文写的很详细,自认没他写的好,我就不赘述这部分内容啦,请自行点击查看,关于这片文章之外的内容添加一点router.groupedgroup后可以添加路径和中间件,添加路径不必赘述,在提供的可变参数“中间件”中创建一个新的“路由器”,后面所有添加的路由都将被中间件封装router.register(collection: &l...

2019-08-22 16:12:32

Ping for mac

终端打开终端 , ping <域名> 停止: control + c网络实用工具Spotlight 搜索“网络实用工具” 选中ping页面

2019-08-22 09:02:37

vapor xcode failed

dependencies错误$ vapor xcodeGenerating Xcode Project [Failed]/Users/roo/Roo/Vapor/Demo: error: manifest parse error(s):/Users/roo/Roo/Vapor/Demo/Package.swift:9:19: error: expression type '[Pack...

2019-08-16 17:07:50

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。