Movilizer Startup从另一个应用程序在不同的平台/应用程序跳转到Movilizer

时间:2016-09-29 08:51:30

标签: movilizer

您能否解释一下如何在另一个应用程序的不同平台上启动Movilizer?例如:

  • 的iOS?通过URL方案?
  • 的Android?通过意图?通过URL方案?
  • Windows Phone?

任何例子?

在桌面上我只是假设通过java -jar调用jar就可以了。使用MSI安装程序时,是否有可用的symblink?

开始时有哪些选择?是否可以直接启动Movelet?跳进一个类别?

所有平台的行为是否一致,或者我需要记住哪些是平台特定的?

非常感谢和最诚挚的问候,

安德烈

1 个答案:

答案 0 :(得分:1)

据我了解,您可以毫不费力地从其他应用程序启动Movilizer。在iOS和Android上我从不尝试这样做,所以我无法解释它,但是例如在Windows Phone上我需要从Socket启动Movilizer和其他三个不同的应用程序,所以我使用C#来完成这个任务,方法:

System.Diagnostics.Process.Start("movilizerPath.exe");

关于启动时的选项,是的,可以使用movelet标记中的 autoExecuteTimeout 属性直接启动一个movelet。值是-32768到32767范围内的整数,表示秒数。

值0取消激活自动执行。

在这种情况下,负值会自动启动移动:

  • 下载了movelet后,如果当时主菜单已打开
  • 如果当时主菜单已打开,则在evey启动movilizer客户端后

在这种情况下,ositive值会自动启动movelet:

  • 下载了movelet后,如果当时主菜单已打开
  • 如果当时主菜单已打开,则在evey启动movilizer客户端后
  • 返回主菜单后,如果当时正在打开主菜单

但请记住,如果您将该属性与超时属性一起使用,或仅使用epsilon屏幕移动,则可能会导致可用性问题。

autoExecuteTimeout

的示例
<movelet moveletKey="m1" initialQuestionKey="q1" moveletType="MULTI" autoExecuteTimeout="1" icon="1" visible="true"></movelet>

关于最后一个问题......理论上是的,所有平台必须表现一致,但在实践中并非如此。

有很多例子,你可以在这里找到一些例子:

  • 屏幕类型。很少有屏幕类型在所有平台上都不起作用。 Type 14(单选列表视图屏幕)仅适用于Windows Mobile,许多屏幕不适用于Windows Mobile(Google Maps SCreen,所有HTML5屏幕等)
  • MEL方法可能在具体版本的某些设备上失败,例如jsonToObject方法。在finalize使用它之后需要等于null,因为如果不是它可以在android和windows phone设备上崩溃movilizer客户端
  • HTML屏幕在所有设备中看起来都不一样。你需要控制它。
  • 图标。取决于尺寸和设备,它在屏幕上可能非常小或很大。

所有这些示例都使用的是Movilizer 2.4版本,我无法在2.5上检查所有这些。