在上几篇博文中分析了YARN调度模拟器SLS的源码,重点分析了AM与RM之间的通信协议。接下来分析在YARN项目中,AM-RM通信如何实现的。注意点:在YARN中,真正已经实现的只有RM和NM,而AM和client只是提供了api,需要用户自行实现。而AM的主要功能是根据业务需求,从RM处申请资源,并利用这些资源完成业务逻辑,因此AM需要跟RM通信,也需要跟NM通信。通信协议:AM-RM:Appl
转载
2024-08-10 11:41:30
140阅读
React-Native是一门用于开发移动应用程序的开源技术。随着原生开发Android和IOS移动应用的成本越来越高,很多企业选择使用跨平台一站式开发的React-Native(简称RN)作为替代方案。在Facebook的引领下,国外很多大厂也纷纷使用RN来开发移动应用程序,构建出世界一流的原生APP。值得一提的是,虽然RN是开源的技术,但是Facebook在 'React 的专利许可证'&nb
转载
2024-07-10 13:04:44
62阅读
最近在要把IOS原生端的百度人脸离线采集SDK移植到React-Native上,就学习了IOS原生平台与RN之间的通信机制。做了一个Demo,现在把知识点梳理了一下,主要有以下两个:(1)RN调用IOS原生平台的方法,并传递参数。(2)IOS原生平台向RN发送事件,并传递参数。Demo主要业务流程如下:(1)RN端跳转到IOS原生页面(我们假设这个是人脸识别页面)。这一步就是实现RN调用IOS原生
转载
2023-08-16 15:50:36
283阅读
关于消息转发机制可能用到的也不是很多,但是在这里也记录下,它的几个用法。如果我们想让一个类没有实现的方法想让另一个类去做,其实就要用到消息转发的机制了。就好比我们有一个Person类,如果这个类声明了eat方法但是没有去实现这个eat方法,然后我们在创建一个Person类对象的时候,然后去调用eat方法,程序毫无疑问会崩溃。关于消息转发首先有几个方法我们需要去知道的就是下面的这几个方法//这个是消
转载
2024-05-28 10:20:53
41阅读
导语: 其实原本是想编写一篇 react-native (下文简称 rn) 在 iOS 中如何实现 jsbridge 的文章;相信看过官方文档的同学都清楚 rn 和 iOS 通信使用了一个叫RCTBridgeModule的模块去实现。但是不知怎么呢?为了查阅其通信的原理,编写了一篇ReactNative 与 iOS 原生通信原理解析-初始化; 由于篇幅过长,我们还未讲解 JS 代码的加载和执行;下
转载
2023-08-22 20:22:03
273阅读
# 科普文章:RN iOS开发指南
React Native(以下简称RN)是一种流行的跨平台移动应用开发框架,它允许开发者使用JavaScript和React构建原生移动应用。在本文中,我们将重点介绍如何在iOS平台上开发React Native应用。
## 1. RN iOS环境搭建
要开始在iOS平台上进行React Native开发,首先需要在本地搭建开发环境。这包括安装Node.j
原创
2024-06-19 06:33:16
75阅读
内存管理是任何编程语言中最重要的过程之一。它是在需要时分配对象的内存并在不再需要时取消分配的过程。管理对象内存是一个性能问题; 如果应用程序不释放不需要的对象,则应用程序会因内存占用增加并且性能受损。Objective-C内存管理技术大致可分为两类 -“手动保留或释放”或MRR“自动参考计数”或ARC1. “手动保留释放”或MRR在MRR中,通过跟踪自己的对象来明确管理内存。这是使用一个称为引用计
转载
2023-09-24 05:44:42
78阅读
最好先用命令行创建一个RN,react-native init + 项目名, 后面集成的时候可以直接拿来用里面的文件,而不用命令行查询版 本,因为RN建议里面的react-native或react使用最新版本。1、搭建ReactNative 开发基础环境,按https://reactnative.cn/docs/0.45/getting-started.html 文档来安装
转载
2023-07-09 23:07:48
175阅读
这只是个记录,没有什么原理性的东西。如果你遇到相似的问题,也许可以看下。iOS:在Xcode对项目打包成ipa。react-native 版本:0.55.4react-native-cli 版本:1.3.0第一步:创建真机调试需要的资源文件(生成 jsbundle 和 assets 获取所有的js文件和资源文件) 在项目中
转载
2023-11-14 09:46:35
107阅读
Objective-C 的本质Objective-C —> C/C++ —> 汇编语言 —> 机器语言 Objective-C 是基于 C/C++ 的数据结构实现的。 将 Objective-C 代码转化为 C/C++代码:xcrun -sdk iphoneos clang -rewrite-objc -arch arm64 main.m -o main.cpp模拟器(i386)
转载
2024-07-02 07:27:21
54阅读
iOS底层原理探究- NSObject 所占内存面向对象的Objective-C我们平时写的 OC 代码底层实现为 C/C++ 代码,因为 Runtime 让 OC 具备了面向对象的特点,而后底层的 C/C++ 会转换成底层的 汇编 代码,最终被被解析成计算机能识别的 机器语言 。而 OC 中的类,正是正是基于 C/C++ 的结构体实现的。我们可以通过 clang 命令将我们平时所写的 OC 代码
转载
2023-08-30 22:43:15
88阅读
基于 Android 图解 ReactNative 原理,深度好文。(编写中...)目录:RN 的优点和缺陷RN 的启动流程Java、Js 的调用流程 1. RN 的优点和缺陷优点:最大的优点是合理简单不具备黑科技的热更新能力和媲美 Native 般的 UI 体验;对比原生开发更为灵活,对比 H5 体验更为高效;多个版本迭代后的今天,它已经拥有了丰富的第三方插件支持。缺点:底
转载
2024-01-11 17:24:50
110阅读
简单的RN(React-Native)入门教程RN(React-Native),是Facebook于2015年4月开源的跨平台移动应用开发框架,是Facebook早先开源的UI框架 React 在原生移动应用平台的衍生产物,目前支持iOS和安卓两大平台。RN使用Javascript语言,类似于HTML的JSX,以及CSS来开发移动应用,因此熟悉Web前端开发的技术人员只需很少的学习就可以进入移动应
转载
2023-12-06 20:11:42
145阅读
# 如何使用React Native开发iOS应用
作为一名新入行的开发者,进入React Native(简称RN)世界可能会让你感到茫然。但别担心,我将为你详细指导如何从头开始使用React Native进行iOS开发。在本文中,我将通过一个整体流程的展示、每一步的具体代码和注释以及可视化图表来帮助你理解。
## 整体流程
在开始之前,让我们先了解完成整个开发过程的一般步骤:
```me
原创
2024-08-03 06:51:07
45阅读
《Spring》IOC实现原理1. 概述2. 依赖倒置3. 控制反转4. 常用容器4.1 BeanFactory4.2 ApplicationContext5. Bean的作用域6. Bean的生命周期 1. 概述IOC(Inversion of Control)控制反转,也称为DI(Dependency Injection)依赖注入。所谓IOC ,就是把原先代码里需要开发者实现的对象创建和关系
转载
2024-09-16 15:01:01
31阅读
# 如何调试React Native iOS应用
## 引言
React Native是一种流行的跨平台移动应用开发框架,它允许开发者使用JavaScript编写应用,并同时在iOS和Android平台上运行。在开发React Native应用时,我们经常会遇到需要在iOS设备上进行调试的情况。本文将向刚入行的开发者介绍如何在iOS上调试React Native应用的步骤和具体操作。
##
原创
2023-12-18 08:23:41
245阅读
在进行 React Native(RN)iOS 开发时,确保我们具备一个良好的开发环境和流程至关重要。在这篇博文中,我将详细记录整个过程,包括环境预检、部署架构、安装过程、依赖管理、版本管理和最佳实践,帮助你高效地进行 iOS 开发。
## 环境预检
在着手开发之前,确保你的开发环境符合必要的要求。可以利用思维导图来系统地组织我们需要检查的项目。以下是一个思维导图,展示了环境预检的步骤。
`
[^footnote]ps:学习IOS很长时间了,一直没总结过,以后尽量一周写一篇。 提到内存管理就要提 MRR(manual retain-release) 和 ARC(Automatic Reference Counting)先说 MRR(manual retain-release) OC创建对象原理 1.分配内存空间,存储对象 2.初始化成员变量 3.反回对象的指针地址Mine *m
# iOS 原生与 React Native 混编开发
随着移动应用开发的不断发展,React Native(RN)作为一种跨平台框架,越来越多地被应用于开发高性能的移动应用。然而,在某些场景中,我们依然需要利用原生的iOS(Objective-C/Swift)功能,例如需要进行图像处理、复杂计算或实现原生功能。本文将介绍 iOS 原生与 React Native 的混合编程(混编)技术,并通过
一、目标React Native热更新就是下载新RN包替换老RN包,那么我们需要考虑的点就是增量更新,要达到增量更新的目的,就需要把老RN包与新RN包的差异找出来,并且可以将这些差异与老RN包还原出新RN包。bsdiff和bspatch相关技术能实现我们的目标。二、基本流程1、服务器使用bsdiff算法将老RN包和新RN包生成一个补丁patch文件,供客户端下载。2、客户端下载patch文件,使用
转载
2023-11-10 10:40:34
198阅读