App进入Main之前做的事情
我们知道,程序的”启动入口”在main
函数,但这是从我们的程序逻辑来看的。实际上操作系统在加载我们的二进制可执行文件时,执行到main
之前做了不少事情。比如oc的runtime运行库环境就是在main之前建立好的。
我们来一起看看在main
之前到底做了什么。
我们知道,程序的”启动入口”在main
函数,但这是从我们的程序逻辑来看的。实际上操作系统在加载我们的二进制可执行文件时,执行到main
之前做了不少事情。比如oc的runtime运行库环境就是在main之前建立好的。
我们来一起看看在main
之前到底做了什么。
Runtime中跟AssociateObject
相关的接口如下
1 | void objc_setAssociatedObject(id object, void *key, id value, objc_AssociationPolicy policy) |
我们来看下苹果开源中的实现
我这里下载的是objc4-680.tar.gz
下载源码后从objc-runtime.mm
里面找到对应方法,会发现实现在文件objc-references.mm
源码可以在这里下载
文件 CFRunLoop.c CFRunLoop.h
这篇是在看了ibireme的深入理解RunLoop后自己对照源码并编写测试的一些记录
参考React-native-code-push README
安装 npm install react-native-code-push --save
参数 –save 在安装的同时,把信息写入package.json 文件的项目路径
检查:
① package.json文件加入了
1 | { |
② node_modules
下有react-native-code-push
文件夹
安装到本地工程
主要是将react-native-code-push工程加入到我们的本地工程里面去,参考官方文档。
iOS中修改加载js文件的路径代码,推荐写法:
1 | NSURL *jsCodeLocation; |
React Native 是Facebook出的一套开源框架,框架的作用是开发者特别是前端开发者可以使用JavaScript + React编写,但是会被“翻译”成原生代码执行。体验比纯粹的使用WebView去运行H5+JS语言更好,效率更高。
这是官方的介绍,可以让你构建出世界级的应用哦,是不是很心动?!
React Native enables you to build world-class application experiences on native platforms using a consistent developer experience based on JavaScript and React. The focus of React Native is on developer efficiency across all the platforms you care about - learn once, write anywhere. Facebook uses React Native in multiple production apps and will continue investing in React Native.
总算搭好了自己的博客,希望能记录下一些东西吧。中间也绕了不少弯路,整理出来供查阅。目前字体的大小和颜色以及代码高亮都还不是很满意,有空再调整一下。
搭建的过程主要是参考了官方文章和网上搜罗的一些教程。