目的是记录并分析GPS轨迹:跨移动后台服务
- 对于需要将记录与GPS iOS和Android设备/在同一时间
- 对于其他设备分析(平板电脑 - 桌面)就足够了分析以前录制的音轨(浏览器)
它是确定有一些特定于平台的代码,但我想的iOS,Android和网络之间共享“分析”部分AND能够运行而iOS/Android应用程序则是背景照明。
我用JavaScript编写的一些 “分析” 的代码,所以我开始寻找这个顺序选择:
1)不要在一个web应用程序
iOS的Safari浏览器停止运行一切JavaScript当背景时。
没有运气。背景执行时
2)使用PhoneGap的或相似
JavaScript的停止。建议将所有服务代码编写为本机插件。
没有运气。
3)使用钛合金
花了两个星期才发现,在钛的Android服务的实现是不完整的。它缺少startForeground(..),它用于要求Android不要终止该服务。有人试图为此实现本地模块,但报告说,虽然服务本身正在运行,但JavaScript不会。
4)使用果酱用于移动和编译的C++为JavaScript的Web
快速谷歌搜索所述C++代码,不能从服务运行
5)使用MoSync为移动和编译C + +到JavaScript的网络
快速谷歌搜索说他们不支持服务。另一方面,我在他们的来源中看到了startForeground(..),所以可能值得重新检查。
7)写在C:本机适用于iOS,JNI的Android,编译成JavaScript的Web
没有检查尚未
6)使用一个代号for mobile and compile Java to JavaScript for Web
还没有检查
而且我的问题:
Q1。您是否可以确认上述每个选项是否可以用于此类应用程序
Q2。我特别感兴趣的钛(如已投资于它)。我正在考虑一个带有虚拟Service的原生Android模块,它除了要求Android不要杀死其真正的Titanium服务与Activity一起运行的进程。
它会工作吗?
Q3。其他选择/一般建议?
谢谢。