APP长文本内容编辑器功能实现方案

背景

CSDN APP 中原有编辑器页面为纯H5适配,整体用户交互体验差,如何优化APP端编辑器用户体验是我们团队需要思考的问题。下面我们以iOS为例展开讨论。

一、方案调研

我们分析了几款国内内容发布的APP,如知乎、今日头条、简书,让我们来看看他们是如何实现APP编辑器功能的。

1、知乎APP编辑器实现方案

从图上可以看出:

a、知乎APP编辑器的输入标题内容为原生实现

b、知乎APP编辑器的正文部分为WebView

c、知乎APP编辑器的工具栏全部由原生实现

2、今日头条APP编辑器实现方案

从图上可以看出:

a、今日头条APP编辑器的输入标题内容与正文部分均为WebView实现

b、今日头条APP编辑器的工具栏全部由原生实现

3、简书APP编辑器实现方案



从图上可以看出:

a、简书APP富文本与MarkDown编辑器的内容区域(标题+正文)均为WebView实现,MarkDown预览功能也由WebView实现

b、简书APP编辑器的工具栏全部由原生实现

c、通过查看简书APP编辑器文件发现,编辑器是本地加载HTML JS等资源文件

综上所述,可以看出APP基本上都是是通过WebView + 原生交互方式来实现编辑器功能

方案选择

1、也是用Hybrid方案,由原生与H5混合开发。

2、将H5资源打包放到远端,APP首次打开应用,从远端下载编辑器资源包,本地加载资源文件。

3、如果资源版本发生变化,将从远程再次下载,覆盖原来本地资源。

4、通过JSBrigde 通信来实现工具栏与内容区域交互。


方案实现

1、资源下载

swift 复制代码
if (是否首次下载资源 || 是否需要更新资源) {
   //下载请求
   [CNNetManager getEditorResource:url {}];
}

2、功能结构

3、效果展示



相关推荐
大明者省1 小时前
激活函数选型速查表(核心规则)
编辑器
GitHubDaily2 小时前
Windows 欠了 30 年的那个原生编辑器,终于回来了。
编辑器
蓝丶曦月4 小时前
MacM系列芯片安装 最新版本Notepad--(平替Windows系统的Notepad++)详细教程
编辑器·notepad++·mac
山水域4 小时前
SKAdNetwork 6.0 深度实战:多窗口转化值(Conversion Value)建模与数据分层架构
ios
jun_bai4 小时前
VSCode使用
ide·vscode·编辑器
JavinLu5 小时前
ios 配置了代理且使用 chls.pro/ssl 下载不了证书,无法弹出下载证书的提示问题
网络协议·ios·ssl
G31135422737 小时前
免费苹果 Plist 文件在线制作 iOS IPA 安装工具
ios
CaracalTiger8 小时前
OpenClaw-VSCode:在 VS Code 中通过 WebSocket 远程管理 OpenClaw 网关的完整方案
运维·ide·人工智能·vscode·websocket·开源·编辑器
2401_832298109 小时前
免费p12证书在线检测iOS苹果证书状态一键查询
ios
符哥20089 小时前
Swift 开发 iOS App 过程中写自定义控件的归纳总结
ios·cocoa·swift