由于HarmonyOS官方提供的网络请求比较复杂,不太适用于项目管理,需要进行网络框架的封装。
主要使用较广的第三方网络请求框架有 @ohos/axios 和 @ohos/retrofit
@ohos/axios 主要偏向前端,和前端的axios很相似,对于前端开发者能够很快上手
@ohos/retrofit 主要偏向Android和其retrofit框架相似,主要通过注解的方式进行网络请求
下载安装ohos/axios 的安装
1ohpm install @ohos/axios
ohos/retrofit 的安装
1ohpm install @ohos/retrofit
这里主要介绍 @ohos/axios 的封装使用
权限管理1ohos.permission.INTERNET
封装使用示例首先我们需要创建一个request.arkts的文件,进行对base_url的管理。如果我们需要对业务逻辑处理的话,需要先对code,msg,data进行封装处理
12345interface BaseResponse&l ...
1.RxJava基本概念和原理是什么?答案:RxJava 是一个用于响应式编程的库,通过 Observable(可观察对象)来发射数据流,并通过 Observer(观察者)来消费数据流。它使用操作符(Operators)来对数据流进行变换、过滤、合并等操作,允许我们以声明式的方式编写异步代码。
EventBus线程模式
EventBus支持订阅者和发布者在不同的线程中调用。可以使用线程模式来指定调用订阅者方法的线程。EventBus支持5种线程模式。
ThreadMode.POSRING
ThreadMode.MAIN
ThreadMode.MAIN_ORDERED
ThreadMode.BACKGROUND
ThreadMode.ASYNC
Android
未读函数响应式编程概述函数式编程是面向数学的抽象,把计算描述为一种表达式求值,函数可以在任何地方定义,并且可以对函数进行组合。
响应式编程是一种面向数据流和变化传播的编程范式,数据更新是相关联的。把函数式编程里的一套思路和响应式编程组合起来就是函数响应式编程。
函数响应式编程可以简化项目,特别是处理嵌套回调的异步事件、复杂的列表过滤和变化或者时间相关问题。在Android开发中主要的两大框架:RxJava和Agera。
RxJava:
异步处理库
可拓展的观察者模式
RxJava的异步操作是通过扩展的观察者模式来实现的。RxJava有四个角色Observable、Observer、Subscriber、Subject。
实习第一天 2024-7-21今天进行了入职报道,去到了人力资源部递交了一些入职材料,然后在会议室里签署了个人资料,实习协议书,保密协议,以及薪资条款。之后HR给我们讲解了一些工作注意事项,包括打卡等,然后再在HR的帮助下加入了工作的钉钉群。
之后,在部门的HRBP的带领下回到自己所在的部门,领取了自己的工作电脑(一个比较旧的ThinkPad),然后带领我到了自己的工位。我所在的公共安全与智能交通事业群挺大的有600多号人,其中我所在的平安事业部也有150左右的人员。
在这里我认识我的杨导师,我所在部门唯一一个Android开发工程师。我看了一下整个集团包括我一个才7个Android开发。
在进行简单的收拾之后,我开始了配置我的开发环境。刚开始并不是很熟悉,我以为我这台电脑需要密码才能打开,最后在我的摸索下我成功在域环境下注册了我的账号,打开这台工作电脑。
看着这台电脑里的内容我摸索了一会,主要有许多东西不知道不清楚是干嘛的。在我的磕磕碰碰下,终于我在下午配置好了Android的开发环境。
实习第二天 2024-7-22在今天早上,我开始测试我的Android的开发环境,创建了一个新的 ...
HarmonyOS
未读ArkTS在TypeScript(简称TS)生态基础上做了进一步扩展,保持了TS的基本风格,同时通过规范定义强化开发期静态检查和分析,提升程序执行稳定性和性能。
在UI开发框架中,ArkTS主要扩展了如下能力:
基本语法:ArkTS定义了声明式UI描述、自定义组件和动态扩展UI元素的能力,再配合ArkUI开发框架中的系统组件及其相关的事件方法、属性方法等共同构成了UI开发的主体。
状态管理:ArkTS提供了多维度的状态管理机制。在UI开发框架中,与UI相关联的数据可以在组件内使用,也可以在不同组件层级间传递,比如父子组件之间、爷孙组件之间,还可以在应用全局范围内传递或跨设备传递。另外,从数据的传递形式来看,可分为只读的单向传递和可变更的双向传递。开发者可以灵活地利用这些能力来实现数据和UI的联动。
渲染控制:ArkTS提供了渲染控制的能力。条件渲染可根据应用的不同状态,渲染对应状态下的UI内容。循环渲染可从数据源中迭代获取数据,并在每次迭代过程中创建相应的组件。数据懒加载从数据源中按需迭代数据,并在每次迭代过程中创建相应的组件。
基本知识声明
ArkTS通过声明引入变量、常量、函 ...
Android的动画分为了三种, 分别是 帧动画、View动画(补间动画)、属性动画。
1、帧动画帧动画就是顺序播放一组预先定义好的图片,就类似于我们观看视频,就是一张一张的图片连续播放。
帧动画的使用很简单,总共就两个步骤:
1、在res/drawable目录下定义一个XML文件,根节点为系统提供的animation-list,然后放入定义更好的图片;2、使用AnimationDrawable类播放第一步定义好的Drawable中的图片,形成动画效果
2、View动画(也称补间动画)2.1 View动画的基本介绍view动画也称为补间动画,因为我们只需要拿到一个view,设定它开始和结束的位置,中间的view会自动由系统补齐,而不需要帧动画每一幅图都是提前准备好的。
View动画是Android一开始就提供的比较原始的动画,主要支持四种效果:平移、缩放、旋转、透明度变化(渐变) 四种基本效果,我们可以再这四种基础效果的基础上,选择其中的几种进行组合。
View动画的四种基本效果对应了四个Animation的子类,如下:
3、属性动画属性动画可以看作是增强版的补间动画,与补间 ...
设计模式的分类总体来说设计模式分为三大类:
创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。
创建模式(5种)工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式
1. 工厂模式1.1 简单工厂模式**定义:**定义了一个创建对象的类,由这个类来封装实例化对象的行为。
代码:
12345678910111213public class SimplePizzaFactory { public Pizza CreatePizza(String ordertype) { Pizza pizza = null; if (ordertype.equals("cheese")) { ...