Movilizer 从不同平台上的另一个应用程序启动/应用程序跳转到 Movilizer
Posted
技术标签:
【中文标题】Movilizer 从不同平台上的另一个应用程序启动/应用程序跳转到 Movilizer【英文标题】:Movilizer Startup from another app on different platforms / app jump into Movilizer 【发布时间】:2017-02-07 12:08:14 【问题描述】:您能否解释一下如何从另一个应用程序在不同平台上启动 Movilizer?例如:
ios?通过 URL 方案? 安卓?通过意图?通过 URL 方案? Windows 手机?有什么例子吗?
在桌面上,我只是假设通过 java -jar ... 调用 jar 就可以了。使用 MSI 安装程序使事情变得更容易时,是否有可用的符号链接?
启动时有哪些选项?是否可以直接启动movelet?跳入一个类别?
所有平台的行为是否一致,或者我需要记住哪些特定于平台的内容?
非常感谢和最好的问候,
安德烈
【问题讨论】:
【参考方案1】:据我了解,您可以从另一个应用程序启动 Movilizer,而不会遇到任何麻烦。在 iOS 和 android 上我从不尝试这样做,所以我无法解释它,但例如在 Windows Phone 上我需要从 Socket 启动 Movilizer 和其他三个不同的应用程序,所以我使用 C# 来完成这个任务,方法:
System.Diagnostics.Process.Start("movilizerPath.exe");
关于启动时的选项,是的,可以直接启动一个movelet,使用movelet标签中的autoExecuteTimeout属性。值是 -32768 到 32767 范围内的整数,表示秒数。
值 0 禁用自动执行。
在这种情况下,负值会自动启动movelet:
movelet 下载后,如果此时主菜单打开 如果此时主菜单打开,则在 movilizer 客户端启动后并且在这种情况下,ositive 值会自动启动 movelet:
movelet 下载后,如果此时主菜单打开 如果此时主菜单打开,则在 movilizer 客户端启动后 返回主菜单后,如果此时主菜单正在打开但请记住,如果您将该属性与 timeout 属性一起使用或使用 epsilon screen only movelet,则可能会导致可用性问题。
autoExecuteTimeout 的示例:
<movelet moveletKey="m1" initialQuestionKey="q1" moveletType="MULTI" autoExecuteTimeout="1" icon="1" visible="true"></movelet>
关于最后一个问题……理论上是的,所有平台的行为必须一致,但在实践中并非如此。
有很多例子,这里有一些例子:
屏幕类型。很少有屏幕类型不适用于所有平台。 Type 14(单选列表视图屏幕)仅适用于 Windows Mobile,许多屏幕不适用于 Windows Mobile(Google 地图屏幕、所有 html5 屏幕等) MEL 方法在具体版本的某些设备中可能会失败,例如 jsonToObject 方法。 finalize 后必须等于 null 才能使用,否则可能会在 android 和 windows phone 设备上崩溃 movilizer 客户端 HTML 屏幕在所有设备中的外观都不相同。你需要控制它。 图标。取决于尺寸和设备,它在您的屏幕中可能非常小或非常大。所有这些示例都使用 Movilizer 2.4 版本,我无法在 2.5 上检查所有示例。
【讨论】:
对 movelet 启动使用自动执行似乎是一种解决方法,但不是最佳实践。这基本上适用于应该可用的启动参数。关于一致性的问题是关于启动参数,而不是关于特定平台的屏幕类型、html 调整或图标大小。 比如:movilizer://?action=execute&moveletID 可以在Android上打开Movilizer,直接用moveletID启动Movellet,对吗?以上是关于Movilizer 从不同平台上的另一个应用程序启动/应用程序跳转到 Movilizer的主要内容,如果未能解决你的问题,请参考以下文章
Movilizer - 复杂 UI 导航中的菜单项无法正常工作?
将 SQL 数据库从一台服务器复制到 IBM netezza Aginity 工作台上的另一台服务器