有赞移动关于权限与审批流程的标准化

一、背景 有赞移动有weex发布平台、移动配置中心平台、App分发平台、热修复平台等。这些平台都需要发布,而发布就需要规范化,需要审批制度。如果为各个平台开发这个审批流程,看起来是一种浪费。 首先想到第一种方案:接入现有的前后端发布平台。 移动侧的发布基本是配置类的发布,跟后端应用和前端应用的发布不一样。后端应用和前端应用的发布都是将指定的内容推送到某台或者多台机器进行部署、启动。两者如果硬要做抽象,成本反而更大,而且不易维护。所以放弃第一种方案。 那么是否可以抽象成单独的统一管理平台,进行标准化呢? 二、梳理…

Read More

有赞移动助手App 本地抓包方案

一、概述 有赞移动助手(下面简称助手App)网关切换功能(&mid=2455759791&idx=1&sn=46960e44ca7d9437e1ac85c106a0d98a&chksm=8c686d8abb1fe49c0b022c69044b932adaf43d2d5d9218e39facdd7369694388ef40ddbf8605&mpshare=1&scene=1&srcid=…

Read More

有赞 Flutter 混编方案

背景 目前准备试水 Flutter,但是多数native开发是不了解Flutter,因此需要设计一种比较“舒服”的集成方式。 混编方案 方案考量 如果直接采用 Flutter 工程结构来作为日常开发,那这部分 Native 开发也需要配置Flutter环境, 相当程度的了解 Flutter 一些技术,成本比较大。 同时如果工程耦合,对于开发过程也是很难受的 基于以上两点思考,针对 Android iOS…

Read More

有赞Flutter插件开发与发布

一、Flutter插件简介 一种专用的Dart包,其中包含用Dart代码编写的API,以及针对Android(使用Java或Kotlin)和针对iOS(使用OC或Swift)平台的特定实现(另外也可以包含Native的组件代码),也就是说插件包括原生代码与Dart代码。插件开发完成后,将上传到dart插件管理服务仓库,类似于maven、pod库,然后在flutter开发过程中可以通过pubspec.yaml(dart包管理配置文件)来获取插件服务。 二、为什么要开发Flutter插件 随着Flutter生态越来越完善,以及Flutter在性能上的高光表现,越来越多的模块将会通过Flutter来进行实现。为了更方便的与原生工程进行对接以及降低整体工程的耦合,…

Read More

有赞移动 iOS 组件化(模块化)架构设计实践

一、背景 业务组件化(或者叫模块化)作为移动端应用架构的主流方式之一,近年来一直是业界积极探索和实践的方向。有赞移动团队自16年起也在不断尝试各种组件化方案,在有赞微商城,有赞零售,有赞美业等多个应用中进行了实践。我们踩过一些坑,也收获了很多宝贵的经验,并沉淀出 iOS 相关框架 Bifrost (雷神里的彩虹桥)。在过程中我们深刻体会到“没有绝对正确的架构,只有最合适的架构”这句话的意义。很多通用方案只是组件化的冰山一角,实际落地过程中还有相当多的东西需要考量。 本文并不准备对组件化架构设计方案给出一份标准答案,而是希望通过我们的实践经验和思考分析,…

Read More