当前位置: 首页 > news >正文

沈阳市网站设计制作公司福州企业公司网站建设

沈阳市网站设计制作公司,福州企业公司网站建设,网站后缀pw,台州行app官网下载一、前言 不同行业的企业会有特殊的业务场景#xff0c;比如某些制造业的企业的工厂是物理隔离的#xff0c;但工程师需要拿着平板输入很多生产数据#xff1b;某些煤炭和矿业企业#xff0c;在实际的工作区都是比较偏远#xff0c;信号比较差#xff0c;但是又需要用手…一、前言 不同行业的企业会有特殊的业务场景比如某些制造业的企业的工厂是物理隔离的但工程师需要拿着平板输入很多生产数据某些煤炭和矿业企业在实际的工作区都是比较偏远信号比较差但是又需要用手机打开应用输入信息等等这些业务场景需要都需要一个离线的应用来支持。 二、需求分析 首先我们来看一下有哪些类型的离线应用。 从上图我们可以看出支持离线应用的有PWAHybrid,Native共三种。 其中Hybrid套壳移动应用支持原生功能复用Web资源但是开发比较复杂本次将不会介绍。PWA开发的应用无需依赖应用市场体积小、加载快提供部分独立应用能力的网页应用但是离线功能基于所使用的浏览器比如苹果的Safari不支持离线缓存能力Chrome支持离线缓存但是基于PWA的应用能力受限于浏览器比如无法获得手机上每天运动的步数心率等数据。所以本文会重点介绍通过移动原生开发的离线应用。移动原生应用具有更好更快用户体验更好集成移动设备的各种功能。 三、安装安卓Studio测试 下载路径Download Android Studio App Tools - Android Developers 首先下载Android studio安装包如果只是测试移动原生的基本功能和调试,可以使用推荐的APP-Make it Native,但是如果需要测试离线功能和自定义移动原生组件则需要安装此工具来测试。Make it Native只支持标准原生组件的测试且无法测试离线功能。 基本是一直点Next直到安装完成网上有很多安装教程这里就不介绍具体的安装细节了。安装成功点击finish等待启动。 继续点击Next安装直到打开如下界面。 点击More Actions,然后选择Virtual Device Manager。 运行设备 把开发出的离线应用生成APK文件然后拖入到打开的手机端安装。构建原生应用程序iOS 上的 IPA 和 Android 上的 APK。可以参考文档Building, Testing, and Distributing Apps | Mendix Documentation 打开安装的应用 输入本地的IP地址然后启动 然后我们的移动应用就启动了在测试移动原生应用的时候需要同步启动Studio Pro里的项目上面生成的APK文件是用于测试开发移动原生应用功能的。测试离线功能的话需要生成最终面向客户的APK安装文件。运行此文件时不需要如上图输入地址而会自动运行在测试离线功能的时候只需要在Studio pro里停止运行的项目即可测试离线功能。 四、移动原生-离线应用 1 简介 Mendix平台支持构建完全脱机优先的应用程序无论是移动原生应用程序还是PWA渐进式 Web 应用程序。 无论连接如何离线优先的应用程序都能提供持续的体验。页面和逻辑与设备上的离线优先数据库交互用户与服务器同步数据。针对本地数据库工作可获得更快速的UI、更高的可靠性和更长的设备电池寿命。请注意离线优先应用程序需要网络连接才能进行多项操作例如首次启动应用程序或用户尝试登录时。 Mendix支持为移动原生和渐进式网络应用程序构建离线优先应用程序。移动原生和渐进式 Web 应用程序 (PWA) 共享相同的核心赋予它们相同的离线优先功能。移动原生应用程序始终离线优先 2 同步 同步是将数据和文件从应用程序的服务器复制到设备并使用在本地设备上所做的更改更新服务器的过程。应用程序首次启动时会填充本地数据库。初始同步后数据将在应用程序中保持可用因此它可以在没有互联网连接的情况下工作。您可以对何时以及如何执行后续同步进行建模。在某些情况下 Mendix 用户可能会自动执行同步。设计高效的同步策略对于高性能应用程序和流畅的用户体验至关重要。 Mendix会自动分析您应用程序的数据模型以根据您的离线优先导航配置文件中使用的页面和纳米流来确定应同步哪些实体。此外该平台考虑了实体访问因此仅同步允许用户访问的数据。 在以下情况下会自动触发同步 移动应用程序的初始启动当满足以下条件时您的Mendix应用重新部署后首次启动您的移动应用 有网络连接您正在使用新的Mendix版本离线优先应用程序中使用的域模型已更改请注意 Mendix 用户有时可以针对某些域模型更改优化流程并将跳过此自动同步从而加快启动时间App用户登录或退出后注退出后同步不是同步退出用户的数据而是同步匿名用户的数据 同步也可以通过Mendix应用程序中的不同位置进行配置例如 作为按钮上的操作作为纳流中的一个动作作为列表视图上的下拉操作仅适用于本机移动设备 同步在数据库级别执行。这意味着如果您在对对象进行一些未提交的更改时进行同步则本地数据库中的属性值将被同步而忽略未提交的更改。同步后未提交的更改仍然可用。 2.1 同步类型 可以从用户触发三种不同类型的同步 完全同步同步未同步的对象选择性同步 2.1.1 完全同步 此模式为离线优先应用程序中使用的所有实体执行上传和下载阶段。您可以使用可定制的同步来定制每个实体的行为。 2.1.2 同步未同步的对象 这种类型的同步只能通过纳流内的Synchronize操作来完成。在这种模式下所有更改提交到离线优先数据库的对象都会同步。有关自上次同步以来删除的对象的信息也会发送到服务器。 2.1.3 选择性同步 选择性同步能通过纳流内的Synchronize操作来完成。在这种模式下一组特定的对象将被同步。 已删除的对象无法使用选择性同步进行同步。同时也可以通过微流里的Synchronize to device来把对应的数据从服务器同步到设备里。 2.2 同步阶段 同步过程包括两个阶段。在上传阶段您的应用程序使用提交的新对象或更改的对象更新服务器数据库。在下载阶段您的应用使用服务器数据库中的数据更新其本地数据库。请注意同步仅适用于数据库级别。这意味着新的未提交对象和属性更改不会同步。 2.2.1 上传阶段 上传阶段执行以下操作 由于只能通过提交或删除对象来修改本地数据库因此此类对象可以是离线优先时创建的新对象也可以是先前从服务器同步的现有对象。上传阶段检测自上次同步以来哪些对象已提交到本地数据库。检测逻辑因同步类型而异。对于Synchronize all 检查本地数据库中所有提交的对象。对于Synchronize objects 检查所选对象列表中的所有已提交对象。自上次同步以来可能有从设备数据库中删除的对象。上传阶段检查哪些对象已被删除。如果有任何更改或新的文件对象它们的内容将上传到服务器并临时存储在那里。每个文件都在单独的网络请求中上传。如果文件上传失败整个同步将中止而不会对服务器或设备数据库造成任何更改。所有更改的和新的对象都发送到服务器文件的内容链接到对象。服务器执行对象的引用完整性验证。对象被提交到服务器数据库。有关已删除对象的信息也会发送到服务器因此服务器也可以从其数据库中删除它们。此步骤在单个网络请求中执行。任何在这些对象上配置的提交前或提交后或删除前或删除后事件处理程序都将照常在服务器上运行在数据上传之后和设备数据库更新之前。这意味着您在事件处理程序中对同步对象所做的任何进一步更改都将在下载阶段应用到设备数据库。此规则有一个例外当您尝试在事件处理程序中更改文件实体的内容时不会应用更改文件实体的内容。新对象的提交前和提交后事件处理程序也将被执行。 2.2.2 下载阶段 如果上载阶段成功则下载阶段开始其中本地数据库使用来自服务器数据库的最新数据进行更新。下载阶段的行为因同步类型而异 完全同步– 每个实体向服务器发出网络请求以从服务器数据库检索最新数据。您可以通过自定义应用程序的同步行为来管理将哪些实体同步到本地数据库。有关此过程的更多详细信息请参阅下面的可自定义同步部分。下载过程还会下载文件实体的内容并将其保存到您的设备存储中。这个过程是渐进的。仅当文件之前未下载过或者文件自上次下载后已更改时应用程序才会下载文件对象的内容。文件实体的更改日期属性用于确定文件对象的内容是否已更改。选择性同步– 只有选择同步的对象才会同步到本地数据库。没有额外的网络请求来检索这些对象。对象在上传阶段发出的网络请求的响应中返回。如果选择文件实体进行同步则其内容也会在设备存储上增量更新。完全同步的逻辑是一样的。 2.3 同步后 同步完成后您应用当前页面上的小部件将被刷新以反映最新数据。如果同步是从纳流触发的则会更新所有纳流对象/列表变量未提交的更改仍会保留。 请注意如果对象在同步过程中从设备中移除则纳流对象变量的值在同步后可能会变为empty 。在以下情况下可能会发生这种情况 对象在服务器上被删除当前用户对对象没有足够的访问权限由安全访问规则定义实体在可定制的同步屏幕上配置了 XPath 约束并且对象不再匹配指定的 XPath 约束实体在可自定义的同步屏幕上配置为无清除数据选项对象的上传阶段失败 - 例如当提交前事件处理程序返回 false 或由于违反唯一验证而提交失败时 2.4 可定制的同步 这些设置不适用于选择性同步。默认情况下 Mendix自动确定哪些对象需要同步如同步中所述。 根据用例可能需要更细粒度的同步控制。因此可以更改实体的同步模式。您可以在以下选项中进行选择 所有对象- 下载应用常规安全约束的所有对象。通过 XPath – 除了常规安全约束之外仅下载与XPath 约束匹配的对象。这意味着所有先前同步的与 XPath 约束不匹配的对象都将被删除。无清除数据 - 不自动下载任何对象但在执行同步时清除存储在该实体的数据库中的数据这在只应上传对象的情况下很有用例如Feedback实体 .无保留数据 ——不自动下载任何对象并且在执行同步时不清除存储在该实体的数据库中的数据这在您想要完全控制同步的情况下很有用应该使用结合同步到设备或与选定的特定对象同步活动。Never – 当实体设置为Never时在 Startup Synchronization、 Synchronize all Objects或Synchronize Unsynchronized Objects期间其对象将不会在运行时和离线优先数据库之间同步。或者仍然可以使用同步到设备或同步所选对象来同步对象但您将控制同步的时间和内容。 如果您的自定义小部件或 JavaScript 操作使用了Studio Pro在您的离线优先配置文件中无法检测到的实体因为它仅在代码中使用您可以使用可自定义的同步来包含此类实体。 同时我们在最新版本10.2发布的内容中可以看到新增了online同步模式这样我们就可以更灵活地决定哪些实体可以用于离线哪些实体必须在在线情况下才能使用。 3 离线优先应用程序建模 您可以使用相同的概念域模型、页面、微流等和编辑器来为 Web 应用程序建模从而为离线优先应用程序建模。然而离线优先应用程序与网络应用程序有根本的不同。 Mendix Studio Pro执行验证以确保您的应用程序遵循离线优先方法并且即使在没有连接的情况下也能正常工作。 3.1 本地数据库 离线优先应用程序的主要区别在于它们使用本地数据库而不是服务器数据库。这意味着您需要将应用程序所需的对象同步到离线优先客户端的本地数据库。但是同步太多对象可能会导致性能问题。 用户所做的变化也存储在这个离线优先的数据库中。这意味着在更改与服务器同步之前其他用户不会存在此类更改。将应用程序中所做的更改同步到服务器数据库时开发团队需要考虑几个方面。例如同一对象可能已被不同用户编辑或删除或者由于应用程序模型中定义的访问规则而无法再访问。在开发项目开始时就工作流程达成一致以保持开发顺利进行。 3.2 向后兼容 开发离线优先应用程序的另一个重要方面是向后兼容性。通常当您将新版本的 Web 应用程序部署到云端时所有用户都可以立即访问最新模型。但是离线优先应用程序并非如此。应用程序模型的某些部分作为本机移动应用程序包的一部分分发例如页面、纳流和 JavaScript 操作。这意味着即使您更改和部署这些部分的新版本您的用户也无法访问最新版本直到他们通过 OTA 包或在线应用商店如 Google Play 或 App Store更新他们的本机移动应用程序。 想象一下您已经部署了本机移动应用程序的第一个版本您的用户已经下载了它现在他们正在使用它。此时您应该考虑对模型引入的更改。例如假设您重命名一个实体并将其部署到Mendix公有云。用户设备中的本地数据库仍将使用旧的实体名称。如果您的用户尝试同步您重命名的实体的新对象这可能会导致同步错误因为服务器不再具有旧名称的实体。即使您的用户更新了设备上的应用程序也可能存在使用旧模型域创建的数据需要与服务器同步。此类问题就是您需要确保应用程序的模型更改向后兼容的原因。 关于其他应用程序元素的更改可能会出现类似的问题包括用户可用的微流和常量。例如如果您的新部署重命名微流或修改其参数则尚未更新其应用程序的用户将使用应用程序的先前模型其中它引用具有旧名称的微流。 为确保Mendix应用程序的最佳用户体验请遵循以下最佳实践 通过自定义同步配置或安全访问规则来限制将要同步的数据量由于网络连接可能很慢且不可靠而且移动设备的存储空间通常有限因此请避免同步大文件或图像例如通过限制照片的大小尝试通过纳流而不是UI元素进行同步以便您可以向同步活动添加错误处理同步活动可以处理同步失败的情况连接错误、模型和数据相关错误等使用选择性同步同步大文件或图像为删除功能使用isDeleted布尔属性以便可以在服务器上正确处理冲突使用提交前和提交后的微流来预处理或后处理数据在您的纳米流中使用微流调用来执行其他服务器端逻辑例如从 REST 服务检索数据或访问和使用复杂逻辑例如 Java 操作帮助您的用户记住同步他们的数据以便尽快处理您可以检查连接并在提交对象的纳流中自动同步或者提醒用户在使用通知时或注销前进行同步以确保不会数据丢失 4 分发移动应用程序 当您对 Web 应用程序进行建模并将其部署到生产环境时所有用户都可以立即访问它。然而对于离线优先的应用程序来说情况通常并非如此。用户设备上安装的应用程序不会立即更新对于本机移动应用程序尤其如此。通常您在 Google Play 商店和 Apple App Store 中创建并分发应用程序的新版本这可能需要一些时间。或者 Mendix提供了一种无线 (OTA) 更新机制来更新您的应用程序而无需完成发布过程。 有关安全更新离线优先应用程序的信息请参阅构建、测试和分发应用程序。Building, Testing, and Distributing Apps | Mendix Documentation 最后让我们断开Studio pro的项目来测试离线应用吧。 五、参考资料 离线功能介绍Offline-First Data | Mendix Documentation构建测试发布原生应用Building, Testing, and Distributing Apps | Mendix Documentation 关于Mendix公司 在一个数字化先行的世界中客户希望自己的每一项需求都得到满足员工希望使用更好的工具来完成工作而企业意识到自己只有通过全面数字化转型才能生存并取得成功。Mendix公司a Siemens business正在迅速成为企业数字化转型的推动者。其业内领先的低代码平台和全方位的生态系统整合最先进的技术帮助企业创造出提高互动性、简化操作和克服IT瓶颈的解决方案。Mendix公司以抽象化、自动化、云和协作为四大支柱大幅提升开发者的生产力并且依靠自己的工程协作能力和直观的可视化界面帮助大量不熟悉技术的“公民”开发者在他们所擅长的领域创建应用程序。Mendix公司是权威行业分析师眼中的领导者和远见者也是一个云原生、开放、可扩展、敏捷和饱经考验的平台。从人工智能和增强现实到智能自动化和原生移动Mendix公司已成为数字化先行企业的骨干。Mendix公司企业低代码平台已被全球4000多家领先的公司采用。
http://wiki.neutronadmin.com/news/425841/

相关文章:

  • 房地产政策东莞网络排名优化
  • 网站被黑解决方案网站建设提高信息
  • 品牌高端网站制作机构室内建筑设计
  • 南昌网站排名优化软件如何做一个论坛网站
  • 门户网站开发建设技术wordpress支持PHP吗
  • 铁岭网站开发自媒体策划哪里公司最好
  • 软件公司网站 手机版重庆代还信用卡网站建设
  • wordpress做游戏网站网站备案审核状态查询
  • 贵州省网站节约化建设通知网络维护工程师工资多少
  • 山东省春季高考网站建设试题品牌vi设计升级
  • 网站建设外包工作织梦网站建设考试
  • 手机网站制作工具互联网的营销推广方式
  • 做网站页面大小多大军队营房基础建设网站
  • 移动网站建设论文西安正规网站建设报价
  • 网站维护需要用到哪些知识wordpress 改成论坛
  • 网站建设需求分析有什么内容免费云主机服务器
  • 盐城专业做网站的公司校园文化建设图片网站
  • 简单网站建设的费用外贸网站导航
  • 网站设计策划案合肥婚恋网站建设
  • 广州php网站建设北京光辉网站建设
  • 安国网站建设线上网络推广方案
  • 视频直播免费网站建设上海市崇明县建设中学网站
  • 刚做的单页网站怎么预览南县网站建设推荐
  • 中国建设教育协会网站查询全国职工素质建设工程专题网站
  • 建站哪家好要认定兴田德润河北建设厅查询网站
  • 网站后台如何添加附件智能网站建设服务
  • 网站建设logo显示怎么设置外贸网站做哪些语言
  • asp网站幻灯片不显示dw制作家乡网页的步骤教程
  • 常州免费网站建设最火的网站开发语言
  • 贵阳网站建设方案咨询适合做网页的主题