如何使用appcelerator构建服务Android

时间:2016-08-03 13:51:02

标签: javascript service appcelerator

我正在使用appcelerator工作室构建服务。这是我在 Index.js 页面中构建的代码:

var intent = Titanium.Android.createServiceIntent( { url: 'myservice.js' } );
// Service should run its code every 2 seconds.
intent.putExtra('interval', 60000);
// A message that the service should 'echo'
//intent.putExtra('message_to_echo', 'Bo uscirà questo messaggio?');

var service = Titanium.Android.createService(intent);
service.addEventListener('resume', function(e) {
    Titanium.API.info('Service code resumes, iteration ' + e.iteration);
});
service.addEventListener('pause', function(e) {
    Titanium.API.info('Service code pauses, iteration ' + e.iteration);
    if (e.iteration === 1) {
        var _model = Alloy.createModel("ServiceDAO", {
            ID : 1,
            ServiceRunning: 0,
            ApplicationRunning: 0
        });
    _model.save();    
    }
});
service.start();

现在,当我尝试启动应用程序时, myservice.js 每60秒执行一次,但我有两个问题:

1)当服务运行时,我的界面性能有问题 2)如果我关闭了应用程序,则该服务未运行。

那么,当应用程序未运行时,如何使用在后台运行的appcelerator实现服务?

1 个答案:

答案 0 :(得分:0)

我尝试了一次:http://docs.appcelerator.com/platform/latest/#!/guide/Android_Services-section-43287937_AndroidServices-ServiceCode并且似​​乎工作正常。 要在关闭应用程序时进行记录,您应该使用ADB logcat。 另外,不要忘记将它包含在tiapp.xml中,如:

<services>
    <service url="your_service_name.js" type="interval"/>
</services>