Quantcast
Channel: CSDN博客移动开发推荐文章
Browsing all 5930 articles
Browse latest View live

Image may be NSFW.
Clik here to view.

21day 多线程(GCD)

重点: NSThread 多线程基础、pthread、开启线程的3种方式 线程的状态、线程安全问题、线程间的通信 GCD 同步方法和异步方法、队列的使用、线程间的通信 延迟执行、一次性代码、队列组、单例模式-ARC、单例模式-MRC、用宏抽取单例模式 NSOperation...

View Article


22day 单例模式

1、单例模式的基本实现 /** 单例模式:一个类只有一个对象 */ @implementation HLMusicTool id _musicTool;//全局变量 /** alloc方法内部会调用这个方法 */ + (instancetype)allocWithZone:(struct _NSZone *)zone{ NSLog(@"%s",__func__);...

View Article


22day NSOperation

前言 重点: NSThread 多线程基础、pthread、开启线程的3种方式 线程的状态、线程安全问题、线程间的通信 GCD 同步方法和异步方法、队列的使用、线程间的通信 延迟执行、一次性代码、队列组、单例模式-ARC、单例模式-MRC、用宏抽取单例模式 NSOperation...

View Article

22day NSThread

重点: NSThread 多线程基础、pthread、开启线程的3种方式 线程的状态、线程安全问题、线程间的通信 GCD 同步方法和异步方法、队列的使用、线程间的通信 延迟执行、一次性代码、队列组、单例模式-ARC、单例模式-MRC、用宏抽取单例模式 NSOperation...

View Article

线程间的通讯

前言 什么叫做线程间通信: 在1个进程中,线程往往不是孤立存在的,多个线程之间需要经常进行通信 1、线程间通信的体现 1)1个线程传递数据给另1个线程 2)在1个线程中执行完特定任务后,转到另1个线程继续执行任务 2、线程间通信常用方法 - (void)performSelectorOnMainThread:(SEL)aSelector withObject:(id)arg...

View Article


22day 遇到的问题 \内存管理

内存管理 凡是函数名中带有create、copy、new、retain等字眼的,都应该在不需要这个数据的时候进行release。 GCD的数据类型在ARC环境下不需要进行release;而CF的数据类型在ARC、MRC环境下都需要做release的 /* 内存管理的补充: 1、foundation框架 OC语言 2、core foundation 框架 1)、C语言,例如通讯录就是基于这个框架。...

View Article

Image may be NSFW.
Clik here to view.

桥接

1》.在非ARC情况下:如果想将Core Foundation转换为Foundation , 直接强制类型转换即可 2》. ARC 环境下的转换: oc 转换到c __bridge CFStringRef/ __bridge_retained <==>CFBridgingRetain() c对象到oc对象的转换 __bridge octype(NSString) *...

View Article

-fobjc-arc 和 -fno-objc-arc 的使用

在非ARC工程中集成ARC代码: 使用-fobjc-arc来标记那些通过ARC编译的第三方源代码。 在ARC工程中集成非ARC的第三方代码,编译库里面的文件需要使用-fno-objc-arc 。 常见错误: --Cast of an indirect pointer to an Objective-C pointer to ‘CFTypeRef ’ (aka ‘const void *‘) is...

View Article


Image may be NSFW.
Clik here to view.

开启僵尸对象(Zombie Objects)来定位内存问题

前言 开启该选项后,程序在运行时,如果访问了已经释放的对象,则会给出较准确的定位信息,可以帮助确定问题所在。 该功能的原理 在对象释放(retainCount为0)时,使用一个内置的Zombie对象,替代原来被释放的对象。无论向该对象发送什么消息(函数调用),都会触发异常,抛出调试信息。 //[HSDataTool init]: message sent to deallocated...

View Article


Image may be NSFW.
Clik here to view.

Android侧滑删除另一种实现,SwipeListView补充

前不久在在做聊天删除功能的时候使用SwipeListView进行侧滑删除有一点小问题,因为SwipeListView嵌套在Fragment内的时候,会报一个转换错误,原因是SwipeListView是基于ListView实现的SwipeListView。 针对这个问题,首先想到的就是自定义View。首先看一下实现的效果。 自定义侧滑实现...

View Article

Image may be NSFW.
Clik here to view.

20day-、UI综合练习(网易彩票)---主要代码和对应的业务分析

网易彩票业务 1、彩票资讯、中奖排行、个人中奖 2、主要内容 购彩业务模式:代理商机制、资金流 购彩流程: 采种:双色球 3、代理商机制 1)代理商机制的产生原因 让用户的购买投注被国家认可,也是出票合法化 出票门槛高 小公司作为子代理商跟代理商(和有关机构签订协议的企业)打交道 2)代理商的工作 对上与政府部门协调,对下管理子代理商 为每个子代理商分配唯一的标识和密码 3)子代理商可以做的事情...

View Article

Image may be NSFW.
Clik here to view.

Chromium插件(Plugin)执行3D渲染的过程分析

...

View Article

Image may be NSFW.
Clik here to view.

Android WebView简要介绍和学习计划

       我们通常会在App的UI中嵌入WebView,用来实现某些功能的动态更新。在4.4版本之前,Android WebView基于WebKit实现。不过,在4.4版本之后,Android WebView就换成基于Chromium的实现了。基于Chromium实现,使得WebView可以更快更流畅地显示网页。本文接下来就介绍Android...

View Article


Image may be NSFW.
Clik here to view.

Android WebView加载Chromium动态库的过程分析

       Chromium动态库的体积比较大,有27M左右,其中程序段和数据段分别占据25.65M和1.35M。如果按照通常方式加载Chromium动态库,那么当有N个正在运行的App使用WebView时,系统需要为Chromium动态库分配的内存为(25.65 + N x...

View Article

Image may be NSFW.
Clik here to view.

Android WebView启动Chromium渲染引擎的过程分析

       Android...

View Article


Image may be NSFW.
Clik here to view.

Android WebView执行GPU命令的过程分析

       Android WebView使用的Chromium引擎,虽然没有自己的GPU进程或者线程,但是却可以执行GPU命令。原来,Android WebView会给它提供一个In-Process Command Buffer GL接口。通过这个接口,Chromium引擎就可以将GPU命令提交给App的Render Thread执行。本文接下来就详细分析Android...

View Article

Image may be NSFW.
Clik here to view.

Android WebView硬件加速渲染网页UI的过程分析

      Android WebView作为App UI的一部分,当App UI以硬件加速方式渲染时,它也是以硬件加速方式渲染的。Android WebView的UI来自于网页,是通过Chromium渲染的。Chromium渲染网页UI的机制与Android App渲染UI的机制是不一样的。不过,它们会一起协作完成网页UI的渲染。本文接下来就详细分析Android...

View Article


Image may be NSFW.
Clik here to view.

《Android系统源代码情景分析》连载回忆录:灵感之源

...

View Article

Image may be NSFW.
Clik here to view.

android EditText,textview显示 特殊字符及自定义字体

在开发的时候,我们经常有碰到需要显示特殊字符的情况,例如如下面的 特殊字符 当然特殊字符不仅仅是这些,要根据自己的业务而定。android 特殊字符 比较全的 :http://www.ztxz.cn/fonts/460.htm,那么如果碰到这样的特殊字符,我们设置到textView 或者EditText会发现是乱码。又或者我们要显示一些特殊样式的字体 这种情况我们的解决方案就是要引入三方的字体库。...

View Article

Image may be NSFW.
Clik here to view.

iOS 基于Socket使用Protobuf进行数据传输

题记: 最近有需求场景涉及到数据传输,要求尝试一下Protobuf的方式,基于Socket进行传输。 那么这个Protobuf是个啥?我也是mb的,好吧,让我们看看这究竟是什么。 1.Protobuf简介: 简介: Protobuf是一个开源项目,Google开发的,是一个与语言、平台无关,可扩展的序列化、结构化数据交换格式;和我们熟悉的Json和xml做的事情其实差不多;...

View Article
Browsing all 5930 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>