WJ的博客

记录成长的自己

iOS多线程和锁的相关笔记

iOS多线程和锁的相关笔记 iOS中的常见多线程方案 GCD中有2个用来执行任务的函数 用同步的方式执行任务 dispatch_sync(dispatch_queue_t queue, dispatch_block_t block); queue:队列 block:任务 用异步的方式执行任务...

2019-06-15 20:12:08

阅读数 35

评论数 0

RunLoop 相关知识笔记

RunLoop 相关知识笔记 Runloop 什么是RunLoop? RunLoop是通过内部维护的事件循环来对事件/消息进行管理的一个对象。 1、没有消息需要处理时,休眠以避免资源占用(用户态->内核态) 2、有消息需要处理时,立刻被唤醒(内核态->用户态) Ru...

2019-06-11 22:16:02

阅读数 7

评论数 0

Runtime 相关知识笔记

Runtime 相关知识笔记 isa详解 struct objc_object { private: isa_t isa; } union isa_t // arm64 架构 { Class cls; uintptr_t bits; struct { ...

2019-06-02 22:34:16

阅读数 14

评论数 0

iOS OC基础知识笔记

iOS OC基础知识笔记 一个NSObject对象占用多少内存? 系统分配了16个字节给NSObject对象(通过malloc_size函数获得) 但NSObject对象内部只使用了8个字节的空间(64bit环境下,可以通过class_getInstanceSize函数获得) #import ...

2019-05-25 22:50:47

阅读数 14

评论数 0

React Native利用Animated和SVG实现渐变进度条

React Native利用Animated和SVG实现渐变进度条 根据项目需求,在React Native中实现渐变进度条的案例。 案例效果 案例分析 思路:将整个动画视图拆分成背景,进度,图文显示三个部分,分步实现,然后组合起来。 案例实现 1、需要使用的库,当然有些控件不需要...

2019-05-09 22:29:14

阅读数 88

评论数 0

iOS企业包升级配置加Shell脚本自动处理

iOS企业包升级配置加Shell脚本自动处理 企业包自动升级配置 企业包自动升级配置主要需要以下几项: 1、一个能访问的服务器地址 2、在该地址目录下存放ipa包Plist配置文件以及应用图标等,具体见Plist Plist配置 <?xml version="1.0&q...

2019-04-22 22:58:31

阅读数 28

评论数 0

基于TBS编写Android原生视图提供React Navtive使用的总结

基于TBS编写Android原生视图提供React Navtive使用的总结 TBS的集成流程 1、下载SDK将jar包放在app/libs/目录下(以Project方式展示项目) 2、将Demo工程中的liblbs.so拷贝到main/jniLibs/armeabi/目录下 3、添加build....

2019-04-16 21:59:46

阅读数 547

评论数 0

Android常见内存泄漏及优化的学习笔记

Android常见内存泄漏及优化的学习笔记 单例导致的内存泄漏 public class AppSettings { private static AppSettings sInstance; private Context mContext; private AppSetti...

2019-04-08 21:51:46

阅读数 24

评论数 0

React Native开发应该了解的Android基本知识

React Native开发应该了解的Android基本知识 最近又开始做React Native项目,个人认为无论采用哪种跨平台的技术,都需要对原生技术有一定的了解,开发的时候才能对项目游刃有余。于是又将遗忘N久的Android基本知识捡起来,记录一下,加深印象,也方便后面查看。 Acti...

2019-04-01 21:16:23

阅读数 36

评论数 0

iOS中FTP被动模式开发总结

iOS中FTP被动模式开发总结 最近接手的项目中采用FTP来现实文件的上传下载,但是接手的项目中程序并不能正常的运行,于是将最近研究的问题记录一下。 问题一:FTP工作模式 FTP的工作模式分为主动和被动模式。 简单的说,主动模式是客户端链接服务端之后,服务端使用数据端口主动链接客户端发送数据...

2019-03-12 20:54:44

阅读数 48

评论数 2

重拾Android之--多线程技术

重拾Android之–多线程技术 多线程的创建 1、继承Thread类实现多线程 2、实现Runnable接口实现多线程 // 继承Thread类实现多线程 public class MyThread extends Thread { @Override public void...

2019-02-25 20:43:13

阅读数 47

评论数 0

React Native项目升级笔记

React Native项目升级笔记 由于公司项目规划需要升级,项目直接从0.48直升0.57,公司项目涉及的代码量还是比较多的,此次升级大概花费2周左右的时间,现将遇到的问题记录在下面。 iOS原生端的错误 RN基础组件编译异常 RCTBridgeModule.h 解决措施: RNFile...

2019-02-17 21:22:59

阅读数 196

评论数 0

重拾React Native笔记之--原生模块的编写

重拾React Native笔记之–原生模块的编写 iOS原生模块 原生模块 原生模块创建方式及内容包括: 1、创建一个原生模块遵守RCTBridgeModule协议 2、利用RCT_EXPORT_MODULE()宏导出到JS端调用的方法 3、需要导出的常量、枚举等 4、向JavaScript...

2019-02-16 21:15:11

阅读数 51

评论数 0

FFmpeg编译以及如何集成到iOS项目

FFmpeg编译以及如何集成到iOS项目 工具环境的准备 下载FFmpeg源代码 下载地址:http://www.ffmpeg.org/documentation.html 下载编译需要的gas-preprocessor 下载地址:https://github.com/libav/gas-...

2018-11-26 22:18:33

阅读数 135

评论数 0

AVFounction学习笔记之--AudioToolbox音频硬编码

AVFounction学习笔记之–AudioToolbox音频硬编码 音频编码相关知识概念 AAC是新一代音频有损压缩技术,它通过一些附加的编码技术(PS、SBR)衍生出LC-AAC、HE-AAC、HE-AAC v2三种主要的编码格式。“LC-AAC是比较传统的AAC,相对而言,其主要应用于中...

2018-11-18 22:09:38

阅读数 186

评论数 0

AVFounction学习笔记之--VideoToolbox视频硬编码

AVFounction学习笔记之–VideoToolbox视频硬编码 视频编码相关知识概念 帧:每帧代表一张静态的图像 GOP:GOP就是一组连续额画面,每个画面都是一帧,一个GOP就是很多帧的集合,GOP cache长度越长,画面质量越好 码率:画面进行压缩后每秒显示的数据量 帧率:每秒显示...

2018-11-05 21:53:55

阅读数 167

评论数 0

AVFounction学习笔记之--音视频的编辑

AVFounction学习笔记之–音视频的编辑 媒体数据的读取和写入 AVAssetReader AVAssetReader用于从AVAsset实例中读取媒体样本。通常会配置一个或多个AVAssetReaderOutput实例,并通过copyNextSampleBuffer方法访问音频样本和...

2018-10-29 21:30:13

阅读数 73

评论数 0

AVFounction学习笔记之--媒体捕捉

AVFounction学习笔记之–媒体捕捉 基础知识 首先先介绍AVFounction捕捉相关的类。如下图所示 1、AVCaptureSession 捕捉会话核心类 2、AVCaptureDevice 捕捉设备,最常用的是音频和视频 3、AVCaptureVideoPreviewLayer 视...

2018-10-16 21:28:19

阅读数 78

评论数 0

AVFounction学习笔记之--音视频播放.md

AVFounction学习笔记之–音视频播放 AVFounction是用于处理音视频的框架。它位于Core Audio、Core Video、Core Media、Core Animation框架之上。 Core Audio是处理所有音频事件的框架。为音频提供录制、播放、处理等接口。 Core V...

2018-10-08 21:57:41

阅读数 80

评论数 0

JS和原生之间的相互调用总结

JS和原生之间的相互调用总结 基础知识 按照官方文档上的意思简单介绍这几个类的作用: JSVirtualMachine JSVirtualMachine 是JavaScript的一个封闭的运行环境,主要用于支持JavaScript并行运行和管理JavaScript与OC或者Swift之间桥接的...

2018-09-26 22:03:30

阅读数 781

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭