DIM去中心化即时通讯协议诞生,寡头垄断通讯领域的局面或即将被打破! 随着互联网行业的深入发展,竞争者迅速进入市场,又迅速退出市场,最终“赢者通吃”现象愈来愈明显。互联网企业依靠技术创新和用户规模,容易实现较高的用户粘性,形成高度集中的市场竞争格局。 尤其在即时通讯领域,全球市场份额被Facebook、腾讯、Line和Whatsapp等几家巨头瓜分,而在国内腾讯更占据90%以上的市场份额。而这些寡头也存在着涉嫌滥用市场支配地位的行为主要为捆绑销售、用户隐私...
Runtime在实际开发中的应用 前言本文并不是Runtime原理从入门到精通之类的教程, 并不会涉及到过多的原理概念描述, 而是介绍在实际开发中如何使用Runtime解决相应的问题, 具体的应用在之前的两篇网络层博客和以后都博客中都会有所体现. 全文约八千字, 预计花费阅读时间20 - 30分钟.一.Protobuf解析器在之前的博客中提到过, 我司网络层用的是TCP+Protobuf的组合, 请求数据是Protobuf,...
纯代码实现UITableViewCell的自定义扩展 第一种,简单的增加UITableViewCell一些小功能例如在cell上面添加一个UILabel。直接在UITableViewCell的生成方法中实现,代码如下- (UITableViewCell *)tableView:(UITableView *)tableViewcellForRowAtIndexPath:(NSIndexPath *)indexPath{static NSS...
iOS 图形编程总结 iOS实现图形编程可以使用三种API(UIKIT、Core Graphics、OpenGL ES及GLKit)。这些api包含的绘制操作都在一个图形环境中进行绘制。一个图形环境包含绘制参数和所有的绘制需要的设备特定信息,包括屏幕图形环境、offscreen 位图环境和PDF图形环境,用来在屏幕表面、一个位图或一个pdf文件中进行图形和图像绘制。在屏幕图形环境中进行的绘制限定于在一个UIView类...
浅谈什么是线程安全 非线程的安全面试官问:“什么是线程安全”,如果你不能很好的回答,那就请往下看吧。论语中有句话叫“学而优则仕”,相信很多人都觉得是“学习好了可以做官”。然而,这样理解却是错的。切记望文生义。同理,“线程安全”也不是指线程的安全,而是指内存的安全。为什么如此说呢?这和操作系统有关。目前主流操作系统都是多任务的,即多个进程同时运行。为了保证安全,每个进程只能访问分配给自己的内存空间,而不能访问别...
详解二分查找算法 我周围的人几乎都认为二分查找很简单,但事实真的如此吗?二分查找真的很简单吗?并不简单。看看 Knuth 大佬(发明 KMP 算法的那位)怎么说的:Although the basic idea of binary search is comparatively straightforward, the details can be surprisingly tricky…这句话可以这样理解...
空间向量OA到转到空间向量OB、以及四元素Q1转到Q2的函数 注意:Oa其实在OK的延长线上,上图只是为了好看才把Oa和OK分开了算法需求如图所示:已知空间向量OA和空间向量OB我想算出OA向OB按某角度或者某时间移动变成空间向量Oa的算法先说废话:我一开始尝试了:空间平面、矩阵、四元素等等方式都能算出来,但是很繁琐。然后发现,其实向量之间的算法完全能满足需求:1.先求出向量AB2.然后按某时间,某角度或者某百分比 乘以AB向量得到向量:AK...
计算向量的角度 C 语言里 double atan2(double y,double x) 返回的是原点至点(x,y)的方位角,即与 x 轴的夹角。也可以理解为复数 x+yi 的辐角。返回值的单位为弧度,取值范围为;Excel 里 ATAN2(x,y)返回的是原点至点(x,y)的方位角。返回值的单位为弧度,取值范围为。注意:1、C 函数与 Excel 函数的参数顺序正好相反;2、C 函数允许 x、y ...
[c++][数学]osg常用图形数学算法小结 1、cos趋近// a reasonable approximation of cosine interpolation double smoothStepInterp( double t ) { return (t*t)*(3.0-2.0*t); }2、pow趋近// rough approximation of pow(x,y) double ...
Unity + ARKit 学习使用 在 iOS11 ARkit , CoreML ,SiriKit,HomeKit ,HealthKit,等 其中ARkit , CoreML是最好玩的,为啥这样说那, 领导要求.ARkit 使用 Visual inertial Odometry(视觉惯性里程计,VIO)来精确跟踪现实世界中的真实场景,VIO 可以将传感器数据和 CoreMotion的数据融合在一起,来提高精确信息.ARKIT 还可...
webview加载部分网页 有时候在用webview 可能加载网页的部分内容, 我以www.baidu.com首页为例子 getElementsByClassName在webViewDidFinishLoad中加入下面代码- (void)webViewDidFinishLoad:(UIWebView *)webView{ NSString * jStr = @"var divsToHide = docum...
非越狱iOS设备的远程控制实现原理 WebDriverAgent是Facebook基于XCUITest推出的iOS的移动测试框架,支持目前市面上所有iOS9以上的设备。该框架通过在设备端启动一个HTTP Server提供一系列API接受操作指令来代替固定的操作代码,除了启动应用、点击和滑动页面元素,WebDriverAgent还提供截图、页面元素查询等功能,iOS的appium测试框架就是基WebDriverAgent实现的。W...
瓷砖+防水要求 1, 地砖铺设方式, 边留到电视背景墙位置, 黄线位置必须对称一,卫生间防水1米8到2米高,全墙 横一遍 竖一遍 横一遍共3遍二,卫生间过门是宽度和墙体一致 ,要求 1,在卫生间门外不能看到过门石, 在卫生间门内侧允许看到, 如图绿色线位置是过门石头, 2,红色线位置如果卫生门东西走向地面不能排整砖, 边留到推拉门 门口位置3,花洒下面主地漏回字型 看图...
装修小组 水电类一, 修改问题1,厨房水池下面留两个防溅盒手座.2,入户门原留感应灯插座去掉3,主卧和大厅要有空调机插座? (大厅是立式空调)4,玄关位置插座并联以后可能会插冰箱5,客厅弱电箱位置50管左边三个插座, 右边三个分别是 插座,网线,有线电视二, 最后装修效果图...
XCodeGhost 病毒检查方法 1, 看 电脑中没有没这个文件 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/Library/Frameworks/CoreServices.framework/ ,如果 有就是中招了。2,Target->Build Setting->Search Paths->Fra
纯UILabel实现文字的竖排显示 记录 做iOS开发要经常用到UILabel。UILabel一般只适用一些简单的文字显示。当需要复杂的图文混排的时候,可以用CoreText来做。但是CoreText用法复杂,当我们遇到一些不是很复杂的交互需求时,用CoreText就有点杀鸡用牛刀的意思。这里介绍一下我在项目里遇到的一个案例。先来看看效果:这里要求文字都是竖排显示,并且当文字是非汉字的时候又要把文字侧过来以方便阅读。
coredata VS sqlist 使用方便性。实际上,一个成熟的工程中一定是对数据持久化进行了封装的,因此底层使用的到底是core data还是sqlite,不应该被业务逻辑开发者关心。因此,即使习惯写SQL查询的人,也应该避免在业务逻辑中直接编写SQL语句。存储性能,在写入性能上,因为都是使用的sqlite格式作为磁盘存储格式,因此其性能是一样的,如果你觉得用core data写的慢,很可能是你用sqlite的时候写的每条数据的
IOS 开发推荐常用lib 1. MantleMantle 让我们能简化 Cocoa 和 Cocoa Touch 应用的 model 层。简单点说,程序中经常要进行网络请求,请求到得一般是 json 字符串,我们一般会建一个 Model 类来存放这些数据。这就要求我们编写一系列的序列化代码,来把 json 转换为 Model 。这很费时间,容易错,不容易修改。 Mantle 很好的解决了这个问题,而且更易用。