Служба Android не работает, когда приложение входит в фон в титане
Привет, я пытаюсь разработать простое приложение-службу Android, используя Titanium, следуя их руководству. Это работает хорошо, когда приложение находится на переднем плане, но когда я нажимаю кнопку "Назад", оно убивает приложение, и моя служба не работает.
Ниже приведен код, который я использовал, и журнал, который я получил, когда приложение входит в фоновый режим. Пожалуйста, дайте мне знать, где я иду не так. (Я использую Titanium SDK 2.0.1.GA2 и Android SDK 2.2 с Android Runtime v8/Rhino].
Мой файл app.js:
var intent = Titanium.Android.createServiceIntent( { url: 'logservice.js' } );
// Service should run its code every 10 seconds.
intent.putExtra('interval', 10000);
// A message that the service should 'echo'
intent.putExtra('message_to_echo', 'Titanium rocks!');
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 === 3) {
Titanium.API.info('Service code has run 3 times, will now stop it.');
service.stop();
} */
});
service.start();
И мой файл logservice.js:
var service = Titanium.Android.currentService;
var intent = service.intent;
var message = intent.getStringExtra("message_to_echo");
Titanium.API.info("Hello World! I am a Service. I have this to say: " + message);
Я включил этот сервисный тег в tiapp.xml
И это журнал, который я получаю, когда нажимаю кнопку "Назад":
W/KeyCharacterMap( 322): No keyboard for id 0
W/KeyCharacterMap( 322): Using default keymap: /system/usr/keychars/qwerty.kcm.bin
E/TiBaseActivity( 322): (main) [62040,92891] Layout cleanup.
D/dalvikvm( 322): GC_FOR_MALLOC freed 9526 objects / 480272 bytes in 115ms
D/dalvikvm( 322): GC_FOR_MALLOC freed 12770 objects / 693152 bytes in 80ms
D/dalvikvm( 322): GC_FOR_MALLOC freed 8846 objects / 508872 bytes in 77ms
D/dalvikvm( 322): GC_FOR_MALLOC freed 8976 objects / 512112 bytes in 78ms
D/EventEmitter( 322): callHandler function not available for resume
W/TiAnalyticsSvc( 322): (Thread-15) [29966,122857] Analytics Service Started
I/TiAnalyticsSvc( 322): (Thread-15) [69,122926] Sending 1 analytics events.
D/dalvikvm( 322): GC_FOR_MALLOC freed 7386 objects / 436936 bytes in 87ms
D/NativeCrypto( 322): Freeing OpenSSL session
D/dalvikvm( 322): GC_FOR_MALLOC freed 1581 objects / 89648 bytes in 71ms
I/dalvikvm-heap( 322): Grow heap (frag case) to 3.588MB for 87396-byte allocation
D/dalvikvm( 322): GC_FOR_MALLOC freed 12 objects / 712 bytes in 76ms
D/dalvikvm( 322): GC_FOR_MALLOC freed 956 objects / 49400 bytes in 88ms
I/dalvikvm-heap( 322): Grow heap (frag case) to 3.624MB for 87396-byte allocation
D/dalvikvm( 322): GC_FOR_MALLOC freed 0 objects / 0 bytes in 75ms
W/TiAnalyticsSvc( 322): (Thread-15) [3772,126698] Stopping Analytics Service
D/SntpClient( 60): request time failed: java.net.SocketException: Address family not supported by protocol