我正在构建一个需要向用户发送基于时间的通知的应用。
我正在使用Notification Manager模块和后台服务并推送通知。只要应用程序在后台打开或可访问,这样就可以正常工作。
关闭应用后,通知就不会响起。即使我的应用已关闭并继续发送通知,我如何确保我的服务正在运行?
答案 0 :(得分:1)
使用 Titanium.Android.startService 启动服务 例如,
app.js
var intent = Titanium.Android.createServiceIntent({
url: 'myservice.js'
});
intent.putExtra('interval', 10000); // Service should run its code every 2 seconds.
intent.putExtra(Titanium.Android.EXTRA_DONT_KILL_APP, true);
Titanium.Android.startService(intent);
myservice.js
var intent = Ti.Android.createIntent({
action: Ti.Android.ACTION_MAIN,
className: 'com.testApp.TestappActivity',
packageName: 'com.testApp'
});
intent.addCategory(Ti.Android.CATEGORY_LAUNCHER);
var pending = Titanium.Android.createPendingIntent({
intent: intent,
flags: Titanium.Android.FLAG_UPDATE_CURRENT
});
var notification = Titanium.Android.createNotification({
contentTitle: 'Something Happened',
contentText: 'Click to return to the application.',
contentIntent: pending
});
Titanium.Android.NotificationManager.notify(1, notification);
还要为tiapp.xml添加服务,
<android xmlns:android="http://schemas.android.com/apk/res/android">
<services>
<service url="myservice.js" type="interval" />
</services>
</android>