【移动App开发】Android
APP开发
浏览:739 次

[前言]
目前,为了降低App的开发成本(学习成本)并满足多平台的要求,选择React Native框架作为开发基础。
=====1====Zbc rn框架1.0=======================
基本开发思路和原则基于Zbc对react native的理解。2020年5月26日在广西金川成立
=====急于向前推进,优先考虑实施,然后考虑优化性能=======
1、 核心思想:
rn框架调用本机组件的方式不够灵活、功能性和多样化,并且具有很高的样式调整限制。虽然它的性能很好,但被抛弃了。
相反,每个界面都使用act本地web视图来调用本地页面文件来实现彩色页面。
2、 开发原则:
1.所有固定页面都存储在本地(动态页面除外)
动态页面:即节假日和特殊活动。一些页面(如主页)的外观可以在不更新App的情况下更改。
2.所有页面都采用数据驱动的页面更改和显示,即页面代码只负责渲染逻辑,不包括任何非渲染逻辑。
3.应在所有页面中放置外部风格参考(固定地址),以实现外部动态风格(例如,国葬将变为黑白,春节将变为新年风格)
4.组件代码应尽可能简单,但不应过度封装。
5.在组件封装的过程中,它应该自动继承先前级别的props,而不是声明它们,然后将它们分配给子组件(刚性封装)。固定必填字段的例外。
6.在对props获取的所有数据执行逻辑之前,判断数据类型和格式是标准的还是空的,然后给出错误提示或继续执行逻辑。
7.布局传递给子组件的所有道具内容应尽可能平坦,不要取中值/值中值,然后操作逻辑
8.网络通信(myFetch.js):由于后台技术的不稳定性,我们暂时采取分而治之的策略来避免过多的元素。
分离原理:
a、 首先,Quartet有一种常见且最标准化的请求方法(GET、PUT、POST、DELETE)。
b、 然后,如果有其他请求方法不符合规范,请选择另一个文档进行部分更正。
C、 最后,将所有请求的组件代码中的地址拉到统一文档中进行一键修改。
9.组件实现:由于我们没有致力于自框架开发,我们选择性能良好的第三方开源组件作为基础设施板。
10.组件代码:它应该包括一个具有统一类名的shell。

3、 规格:
1.RN和web通信模式统一为
【!】 RN=>网络
将对象发送到web端
//这是为了使web端能够启动setState()操作,内容是除etype之外的所有内容
{
etype:“数据”,
...
}
//这是为了让web端发出一个动作(调用一个方法,即This.xxx(…args)),
//一次只能调用一个
{
etype:“动作”,
名称:“xxx”,
参数:[]
}
【!】 web=>RN
发回对象
//
{
Etype:“无限内容”。此字段指示您触发的内容。
...
}
4、 关键技术/实施方案:

1.呼叫相机拍照或录制视频
2.呼叫摄像头扫描二维码
3.手势监控(抖动、水平/垂直屏幕、滑动、长按)
4.观看视频
5.播放音乐
6.访问相册/获取图片和视频文件
7.接收推送信息服务
=================================
实施方案:
1.xxxxxxxxxxx年
2.反应阳性
3.摇晃----------------xxxxxxx
水平和垂直------程序有自己的调整,可以配置为禁用此功能
滑动------xxxxxxxxxxx
长按------xxxxxxxx
4.反应本机视频======反应本机zbc视频播放器
5.xxxxxxxxxxxx
6.自动移动
7.j推
5、 组件库和实现详细信息
1.下拉刷新的列表(web)
保留的接口
a、 应该可以触发事件(下拉、滑到底)
b、 每个项目都应该能够随意呈现

c、 每个项目应能够响应左右滑动事件(附加选项键)