混合开发模式是否可以在App备案制度下突围

混合,开发,模式,是否,可以,app,备案,制度,突围 · 浏览次数 : 975

小编点评

**ICP 备案的挑战和选择** **1. 新规的推行** - 新规要求国内的 App 也要像网站一样进行 ICP 备案。 **2. 开发人员面临的困境** - 开发者需要通过合作或服务与阿里或腾讯等公司进行ICP 备案申请。 - 每次更新都需要填写一次备案表格,可能影响效率。 **3. 信息安全的重要性** - 开发人员需要确保产品中信息收集及使用情况符合隐私保护规定。 **4. 开发模式的选择** - 开发者可以选择两种开发模式: - Hybrid 混合应用Webview 加载网页做 Hybrid 混合应用 - 原生+小程序 **5. 混合应用的优势** - 混合应用采用微信、支付宝等超级 App 已经验证过的技术,易于开发和维护。 **6. 类的加载机制** - 类的加载机制比较复杂,需要从网络流读取字节码加载 Class,并进行验证、准备、解析和初始化。

正文

网站 ICP 备案已施行了很久,我们也非常清楚必须在进行 ICP 备案后,网站才能在大陆范围合法运营,并且用户可以通过域名正常访问网站。

但是月初出了新规,明年起,国内的 App 也要像网站一样进行备案了。想必大家也是早已经听到过这个刷屏的新闻,随便说一声小程序也是。

在管理日益强化的背景下,开发者也会随之而来面临到一些新困境和变化。

对开发者的影响

1、提高了开发门槛

小规模个人开发者难以单独完成备案流程,可能需要通过阿里、腾讯等公司平台进行合作或服务,一般情况会下放备案入口给云厂商。

2、影响开发的周期

开发者还密切相关的是备案规则会要求提供安装包的MD5值,那么也就是意味着形式上可能会让每次更新都备案一次。(下面是网传的一张图)

3、强调信息安全

备案将信息安全作为重要评估标准,开发者再进行用户隐私信息获取的过程中,需要注意产品中信息收集及使用情况符合隐私保护规定,切勿过度的收集信息。

当然还有一个可能性就是 App 备案不是版本审核,而是像网站一样审核期间需要处于不能访问的状态,最后不管网站呈现的什么内容,主要就是最前面的审核资质流程。

但是不管最后落地的备案规则具体是什么样子的,对于技术本身来说,办法肯定会比困难更多。如果每一次更新发版都要填写一次备案表格,那么寻找符合规则的开发模式也是一个必然选择。

开发模式选择

从我的角度思考,以后 App 热更新能力会成为一个必选项,而热更新又有两条路子可以走:

1、混合应用

Webview 加载网页做 Hybrid 混合应用,其实也就是大家比较熟知的「原生+ HTML5」模式了,它的工作原理是App 的服务器端要监测这些内容的更新,然后向设备端的 App 以某种技术手段发送内容更新的通知,然后里面的一些组件,需要向客户端通过网络同步一些页面内容碎片,并且把这些下载的内容,通常是 HTML 和JavaScript,注入到之前挖好的这些洞洞里。

另外中间网络同步的技术方案有很多,例如通过双向的 Web-Socket,或者通过 HTTPlongpolling ,或者通过SSE,或者通过 PushtoPull,又或者其他自定义的技术手段例如 CMS 实现。设备端通常通过 HMR 热模块替换和代码注入等方式让更新的代码在本地生效展示,避免 App 重启。

另一个混合应用开发的办法是「原生+小程序」,其实我更推荐这种方法,一是小程序在国内已经非常成熟而且整体的体验度会远高于 HTML5 ,至少卡顿、白屏的情况不会经常性的出现。二是这个模式已经在微信、支付宝等超级 App 已经验证过,确实这类轻量的技术会在热更新上更加灵活,只需要配合管理后台的上下架就能实现。目前这种技术称为小程序容器技术,属于开箱即用的,对开发者会比较友好。

另外也有纯粹的 Web App 这种模式就不推荐大家了,一是性能不好对于设备、网络的要求比较高,二是这种模式只适合一些非常简单的业务,这里也就不做过多的说明。

2、类加载机制

走 Java Classload 类加载机制,核心的原理就是从网络流读取字节码加载 Class,即通过类加载器读取.class文件中的二进制字节流,并将其转换成Java虚拟机中的 Class 对象。主要的过程包括加载、验证、准备、解析和初始化。

当然这个机制会比上面的更加复杂一些,整体的内容也会比较系统,这里就不作过于深入的介绍,感兴趣的同学们可以进一步查询相关的知识点介绍。

写在后面

在 App 审核日益增加的情况下,对于开发者群体肯定有不小的影响,特别是中小开发者和一些国外开发者来讲会增加不小的阻隘。但是为了更好的适应改变、拥抱变化,我们可以从技术角度出发去进行优化,当然肯定还有其他大佬有更好的办法也欢迎大家给出好的建议。

与混合开发模式是否可以在App备案制度下突围相似的内容:

混合开发模式是否可以在App备案制度下突围

网站 ICP 备案已施行了很久,我们也非常清楚必须在进行 ICP 备案后,网站才能在大陆范围合法运营,并且用户可以通过域名正常访问网站。但是月初出了新规,明年起,国内的 App 也要像网站一样进行备案了。想必大家也是早已经听到过这个刷屏的新闻,随便说一声小程序也是。

C#开发一个混合Windows服务和Windows窗体的程序

很多时候,我们希望服务程序可以直接运行,或者可以响应一些参数,这时候,混合Windows服务和Windows窗体的程序就排上用场了。要实现同时支持Windows服务和Windows窗体,需要在启动的第一步时判断当前运行环境是否为服务模式,可以从以下几个方面进行判断: 当前用户名称:Environme

聊聊Hugging Face

## 概述 HuggingFace是一个开源社区,提供了开源的AI研发框架、工具集、可在线加载的数据集仓库和预训练模型仓库。HuggingFace提出了一套可以依照的标准研发流程,按照该框架实施工程,能够在一定程度上规避开发混乱、开发人员水平不一致的问题,降低了项目实施的风险及项目和研发人员的耦合度

即时通讯系统为什么选择GaussDB(for Redis)?

摘要:如果你需要一款稳定可靠的高性能企业级KV数据库,不妨试试GaussDB(for Redis)。 每当网络上爆出热点新闻,混迹于各个社交媒体的小伙伴们全都开启了讨论模式。一条消息的产生是如何在群聊中传递的呢?让我们一起来探索即时通讯系统(IM)的原理。 IM系统架构的原理 当你在群聊“相亲相爱一

京东到家小程序-在性能及多端能力的探索实践

为了提高研发效率,经过技术选型采用了taro3+原生混合开发模式,本文主要讲解我们是如何基于taro框架,进行多端能力的探索和性能优化。

C#/C++ 通过ODBC连接OceanBase Oracle租户

概述 近期我们项目正处于将Oracle数据库迁移到OceanBase Oracle租户模式的阶段。考虑到我们项目采用了C++和C#混合开发,并且使用了多种技术,因此存在多种数据库连接方式。然而,针对C#连接OceanBase的案例相对较少,因此我特意记录下这一过程。 开放数据库互连(ODBC)是微软

PHP转Go系列 | ThinkPHP与Gin框架之API接口签名设计实践

大家好,我是码农先森。 回想起以前用模版渲染数据的岁月,那时都没有 API 接口开发的概念。PHP 服务端和前端 HTML、CSS、JS 代码混合式开发,也不分前端、后端程序员,大家都是全干工程师。随着前后端分离、移动端开发的兴起,用后端渲染数据的开发方式效率低下,已经不能满足业务对需求快速上线的要

PaliGemma 正式发布 — Google 最新发布的前沿开放视觉语言模型

PaliGemma 是 Google 推出的新一代视觉语言模型家族,能够接收图像与文本输入并生成文本输出。 Google 团队已推出三种类型的模型:预训练(PT)模型、混合模型和微调(FT)模型,这些模型分辨率各异,提供多种精度以便使用。 所有模型均在 Hugging Face Hub 的模型库中发

Semantic Kernel(语义内核)秋季路线图

Semantic Kernel 是一个开源的 SDK,它允许开发人员将大型语言模型(LLM)与传统的编程语言进行混合使用。 微软Semantic Kernel团队 在博客上正式公布了Semantic Kernel 项目秋季发展路线图[1]。这家公司的设计和AI副总裁John Maeda在官方博客中写

CANN训练:模型推理时数据预处理方法及归一化参数计算

摘要:在做基于Ascend CL模型推理时,通常使用的有OpenCV、AIPP、DVPP这三种方式,或者是它们的混合方式,本文比较了这三种方式的特点,并以Resnet50的pytorch模型为例,结合训练营提供的sample,说明了分别是如何实现预处理的。 本文分享自华为云社区《【2023 · CA