掌桥专利:专业的专利平台
掌桥专利
首页

一种无须写代码的手机程序开发平台

文献发布时间:2023-06-19 09:32:16


一种无须写代码的手机程序开发平台

技术领域

本发明涉及软件系统技术领域,具体来说,涉及一种无须写代码的手机程序开发平台。

背景技术

传统的手机应用开发是使用硬编码实现所有的功能,或采用混合式编码的网页或热更新实现手机应用的部分功能更新。大量的单位需要构建自己的手机应用程序用于展示或反馈信息。但如果是外包或自行编写手机应用程序,通常需要两组开发人员来分别实现Android版和iOS版本的手机应用程序,花费较大。

发明内容

针对相关技术中的上述技术问题,本发明提出一种无须写代码的手机程序开发平台,能够克服现有技术的上述不足。

为实现上述技术目的,本发明的技术方案是这样实现的:

一种无须写代码的手机程序开发平台,该平台包括:

移动配置引擎模块,所述移动配置引擎模块用于处理手机应用程序的参数、逻辑及功能,所述移动配置引擎模块包括数据存取逻辑模块、页面视图逻辑模块、控制逻辑模块、多国语言设置逻辑模块;

变量模块,所述变量模块用于采用数据储存格式定义开发应用程式的变量,所述变量模块包括页面基本信息模块、页面主菜单模块、页面数据处理模块、页面视图模块、页面流程逻辑控制模块、系统设置模块、多国语言设置模块;

原生组件转换引擎模块,所述原生组件转换引擎模块用于以纯原生系统组件快速生成完整手机应用程序,所述原生组件转换引擎模块包括数据模型组件模块、页面视图组件模块、逻辑控制组件模块、系统设置组件模块、多国语言组件模块。

进一步的,所述数据存取逻辑模块、页面视图逻辑模块、控制逻辑模块根据使用者填入的手机应用程序变量,快速生成能分別与所述原生组件转换引擎模块中所述数据模型组件模块、页面视图组件模块、逻辑控制组件模块连接的数据。

进一步的,所述页面基本信息模块定义了手机应用程序页面的基本设置,所述页面基本信息模块包括页面初始动作设置模块、主菜单显示隐藏设置模块、页面顺序模块。

进一步的,所述页面主菜单模块用于手机应用程序主菜单的设置,所述页面主菜单模块包括菜单宽高设置模块、样式模板模块、背景颜色与图片设置模块、菜单项设置模块。

进一步的,所述菜单项设置模块包括选项文字与图片设置模块、交互样式设置模块、事件设置模块、菜单项顺序设置模块。

进一步的,所述页面视图模块包括原生组件类型、组件位置及宽高、原生组件属性样式设置、组件交互设置。

进一步的,所述数据模型组件模块包括实际数据获取及处理逻辑,解析转换移动配置引擎产生的数据,动态生成处理网络存取、数据库存取、内存存取及档案存取的iOS及Android的原生组件。

本发明的有益效果:通过该平台,支持大量的单位使用者自行搭建服务器,照着配置手册进行界面和和工作流的配置,就可以完成一个手机应用程序的开发工作,节省大量的开发和调试时间;通过简单的调整数据库中的配置,就让特有的手机应用程序立即可用;用Xamarin技术开发跨平台手机应用框架程序,提供一般应用程序所需要的消息推送、退出提醒,通过解析配置信息、动态生成原生控件形式的应用程序界面,使用的单位只需在服务端填写或修改配置,就可以制作一个灵活实用的手机应用程序;依托Xamarin的跨平台编译功能,分别通过Visual Studio在Windows平台下编译生成Android版本的框架应用程序,在Mac平台下编译生成iOS版本的的框架应用程序,只需要编译一套框架应用程序代码,即可跨平台编译;一个新的单位要使用本应用程序,需要在中心注册单位名称、单位服务器地址等信息,然后按规则去单位自己的数据库中填写配置,就可以较快地配置出一个独有的应用程序。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是根据本发明实施例所述的一种无须写代码的手机程序开发平台的流程框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,根据本发明实施例所述的一种无须写代码的手机程序开发平台,包括:移动配置引擎模块,所述移动配置引擎模块用于处理手机应用程序的参数、逻辑及功能,所述移动配置引擎模块包括数据存取逻辑模块、页面视图逻辑模块、控制逻辑模块、多国语言设置逻辑模块;

变量模块,所述变量模块用于采用数据储存格式定义开发应用程式的变量,所述变量模块包括页面基本信息模块、页面主菜单模块、页面数据处理模块、页面视图模块、页面流程逻辑控制模块、系统设置模块、多国语言设置模块;

原生组件转换引擎模块,所述原生组件转换引擎模块用于以纯原生系统组件快速生成完整手机应用程序,所述原生组件转换引擎模块包括数据模型组件模块、页面视图组件模块、逻辑控制组件模块、系统设置组件模块、多国语言组件模块。

在本发明的一个具体实施例中,所述数据存取逻辑模块、页面视图逻辑模块、控制逻辑模块根据使用者填入的手机应用程序变量,快速生成能分別与所述原生组件转换引擎模块中所述数据模型组件模块、页面视图组件模块、逻辑控制组件模块连接的数据。

在本发明的一个具体实施例中,所述页面基本信息模块定义了手机应用程序页面的基本设置,所述页面基本信息模块包括页面初始动作设置模块、主菜单显示隐藏设置模块、页面顺序模块。

在本发明的一个具体实施例中,所述页面主菜单模块用于手机应用程序主菜单的设置,所述页面主菜单模块包括菜单宽高设置模块、样式模板模块、背景颜色与图片设置模块、菜单项设置模块。

在本发明的一个具体实施例中,所述菜单项设置模块包括选项文字与图片设置模块、交互样式设置模块、事件设置模块、菜单项顺序设置模块。

在本发明的一个具体实施例中,所述页面视图模块包括原生组件类型、组件位置及宽高、原生组件属性样式设置、组件交互设置。

在本发明的一个具体实施例中,所述数据模型组件模块包括实际数据获取及处理逻辑,解析转换移动配置引擎产生的数据,动态生成处理网络存取、数据库存取、内存存取及档案存取的iOS及Android的原生组件。

为了方便理解本发明的上述技术方案,以下对本发明的上述技术方案进行详细说明。

本发明是在数据库中配置用户界面和工作流,不同单位的用户通过在各自的服务器下载这些数据配置的元数据信息,在手机终端进行渲染,生成原生控件的界面,实现用户界面的动态呈现,工作流的的配置可以实现较丰富的页面切换逻辑,让手机应用能实现常用的功能,通过样式的配置让界面样式更加美化。这种方式让使用单位能轻松地对界面和工作流进行改动,使用者同步数据后,看到最新的界面。列表记录缓存在手机端,离线时,可以方便地查看缓存的数据。

一种无须写代码的手机应用实践

手机应用框架程序核心部分:

用户界面生成引擎、数据访问、HTTP请求、Json解析、表达式处理、自定义控件等。

手机应用框架程序整体架构:

框架核心引擎、登录界面、应用首页、安桌和iOS平台区分部分。

手机调用的服务端:

中心服务器、组织服务器

平台的准备

手机框架程序在Windows和Mac系统中分别编译生成Android和iOS两个发行版本,无定制信息的初始版本,需要通过扫码或输入单位码,去中心服务器验证,确定是是某个单位的用户,再去连接单位服务器进行元数据下载,完成后,才算初始化完成。

中心服务器作为平台的重要组成部分,它使用ASP.Net MVC开发,部署在WindowsIIS上,数据库默认采用MSSQL。它通过Web API对外提供服务,给手机程序提供了初始化应用的服务。中心服务器部署在互联网可访问的云端,提供注册单位、验证单位码、激活设备、单位服务器信息、应用升级提醒、应用历史版本信息、日志服务等功能。对内有系统管理平台,用于管理单位信息,查看和统计注册日志等。

服务器不仅配置HTTPS协议访问,而且数据包额外进行AES256加密。

准备单位服务器的安装文件,以备单位使用者下载。

单位的准备

单位要准备好应用的需求,列出功能模块、界面原型、数据结构,学习配置用户界面和工作流的方法。

将要使用手机应用的单位需要在中心服务器登记自己的单位名称、单位规模等信息,下载单位服务器安装包,安装在单位内部的IIS服务器,搭建数据库服务器,用于存储配置信息。根据需要,IIS支持互联网或仅局域网内访问,并不需要直接与中心服务器进行连接。对APP框架的显示风格、用户界面、工作流进行配置,保存在数据库中。登录后的首页提供两种风格备选,功能模块的选择采用左侧弹出菜单还是采用页面标签栏风格,标签栏式的模块选择选时标签栏出现在底部还是顶部。

单位服务器的Web API提供登录、读取业务表数据、读取下拉列表项数据、保存数据、登出等服务。

单位用户使用

初始状态时,单位用户根据自己的手机型号,下载安装相应的手机应用程序。下载完,还处于无数据的模式,以二维码扫描或填写方式,输入单位码,验证时,程序到中心服务器进行注册和和验证,通过后,获得单位服务器地址、单位名称、应用最低版本要求等信息,更新界面上的应用标题,把相应的信息写入手机本地数据库中。进入下载元数据界面时,显示当前元数据版本号和大小,必须下载完才能进行登录操作。

用户单位用户登录手机应用,输入单位提供给他的用户名和密码,输入验证码,即可往单位服务器的Web API接口发送登录请求,成功后,进入到应用首页,接下来,就可以操作整个应用程序,查看列表、修改记录。这些操作会与单位服务器进行交互,获得服务端实时数据,先按一定的命名规则存储成手机端本地JSON文件,再动态生成界面元素并绑定数据,展示给用户。没有网络时,读取本地相应页面标识和匹配参数的JSON得到本地数据,也能显示界面。

应用的设置界面是个标准的功能,显示单位名称、应用版本号,退出登录、重置应用数据,回退到初始状态。

单位定制需求

平台也可以提供手机应用代码级别和单位服务器程序的改动,但核心引擎不进行定制化。这样会生成一个单位定制版本。例如手机默认就把元数据这些填充在手机应用数据库中,能实现一安装完毕,无需下载元数据,这就是一个单位特有的手机应用。例如一般的数据保存方法都可以通过Webpage_datasource和Workflow的配置调用标准方法来实现,但如果单位有特殊的保存或更改数据的要求,可以改动单位服务器程序,来增加新的接口方法,在Workflow中调用它。也可以改动单位的手机应用程序代码,来实现新的需求,如果是一个共性需求,则会在后续版本中加入到公共版本。

框架程序实现原理

框架核心引擎主要是界面生成引擎和工作流配置。采用把定义存储在数据库表格里的方式存储配置信息,程序动态解析配置,动态生成原生控件。工作流指在点击链接、按钮进行提交时,需要做的保存数据或界面跳转的动作。

界面生成引擎所用的表如图所示,包含7张表。Webpage定义用户界面标识和页面相关属性;Layout定义页面元素;Caption定义元素对应的多国语言文本;Element定义元素的自定义格式、尺寸、最大值、是否转大写;Webpage_datasource定义页面所用的数据源SQL语句;Workflow定义义工作流动作;Menu定义菜单项,当多个页面组成一个标签栏风格展示时使用。

应用所需要的所有的用户界面都在Webpage表中定义,以英文字母作为页面标识,字段包含页面标识、图标、页面标题、页面页脚、是否输入值全转大写、页面样式、菜单项标识,父页面标识(多界面共用一个菜单项时使用)。

Layout表是描述页面元素,它的字段包含页面标识、数据表标识、元素名称、Caption标识、控件类型、行、列、占几列、控件宽度、对齐方式、元素占位方式(Caption在上、控件在下;Caption在左、控件在右;只显示控件)、元素内置数据源(表、显示字段、值字段、排序字段)、自定义属性、默认值、链接地址、打开链接方式、打开新窗口大小、事件函数、显示模式(只读、可编辑、不可用)、表达式显示条件、权限号。

应用要显示一个界面,外层函数传进来一个页面标识和相关的参数Json字符串,通过数据数据访问类从手机应用的本地数据库中读取Webpage表的一条记录,通过标识判断判断是list开头的列表界面,其它开头是显示或修改信息页面。读出字段内容,给页面对象的属性进行赋值。

如果是列表界面,通过页面标识PageID从Layout表中过滤出此列表页面的字段信息,Layout表关联Caption、Element表,获利列表字段的全部属性,从Webpage_Datasource表中获得数据源SQL语句组成部分,解析JSON参数,再通过表达式解析器,把SQL语句解析成能执行的SQL语句。通过HTTP请求发给单位服务器,得到JSON返回结果。列表表元素一般是以Label类型显示数据,即直接从结果数据集的字段值就是显示的值,如果是此元素的Element定义了自定义的时间格式,会对字段值进行格式化后赋值给Label。

如果是可编辑界面,则支持控件类型有Label、DLabel、SL、URL、FlagBox、CheckBoxList、Radiobutton、ComboBox、Hidden、TextBox、TextArea、Date、DateTime、Dropdown、SubmitButton、List、MultiSection。

其中DLabel、SL、CheckboxList、RadioButton、ComboBox支持二次读取数据源,即它们的选项值会重新组织一个SQL语句,判断如果是本地同步过来的Lookup数据,则直接在手机端本地数据库中执行得到数据表,否则要去服务端获取数据。通常这种地地方、只适合配置本地数据库中的数据。

其中的SubmitButton对应到界面中的手机屏幕右上角的的按钮区,返回功能的按钮钮,显示在左上角。

因手机屏幕大小有限,最多支持显示4列。纵向暂不设高度限制,界面支持纵向向滚动条,动态生成的控件,在Panel窗口里顺序往下排列,高度递增,直到处理完毕。需要多界面处理的,可配合Workflow的保存按钮,先保存第一屏的数据,再切换到下一界面继续输入。

提交数据时,遍历内存中缓存的Panel容器内各控件实例,读取控件名称和控件的值,存入哈希表中,跟页面标识和提交按钮名称一起,发送给单位服务器保存数据。

综上所述,借助于本发明的上述技术方案,通过该平台,支持大量的单位使用者自行搭建服务器,照着配置手册进行界面和和工作流的配置,就可以完成一个手机应用程序的开发工作,节省大量的开发和调试时间;通过简单的调整数据库中的配置,就让特有的手机应用程序立即可用;用Xamarin技术开发跨平台手机应用框架程序,提供一般应用程序所需要的消息推送、退出提醒,通过解析配置信息、动态生成原生控件形式的应用程序界面,使用的单位只需在服务端填写或修改配置,就可以制作一个灵活实用的手机应用程序;依托Xamarin的跨平台编译功能,分别通过Visual Studio在Windows平台下编译生成Android版本的框架应用程序,在Mac平台下编译生成iOS版本的的框架应用程序,只需要编译一套框架应用程序代码,即可跨平台编译;一个新的单位要使用本应用程序,需要在中心注册单位名称、单位服务器地址等信息,然后按规则去单位自己的数据库中填写配置,就可以较快地配置出一个独有的应用程序。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

相关技术
  • 一种无须写代码的手机程序开发平台
  • 用于将程序代码从推测区域恢复到非推测区域的写拷贝缓冲器
技术分类

06120112202757