我正在构建一个更大系统的原型应用程序。该原型将处于离线状态,但看起来仍像是从服务器获取信息。即使应用程序未打开(使用 DeamonThread)。
所以我创建了 Android 应用程序,现在尝试添加一个 AI(在应用程序内)来创建和删除任务。它可以工作,但是当我尝试从 DeamonThread 添加通知时,它不会因为 Thread 不是 Activity。
我试图将其更改为扩展 Activity 实现 Runnable 但是无法将其设为 Deamon。
感觉好像我错过了一些简单的东西..
public void run() {
while (counter < 100) {
try {
sleep(random.nextInt(10000));
} catch (InterruptedException e) {
e.printStackTrace();
}
Task task = new Task("AI", "this was the " + counter
+ " AI message", flow);
sendNotation();
}
counter++;
}
}
private void sendNotation() {
NotificationManager nm=(NotificationManager) getSystemService(NOTIFICATION_SERVICE);
Intent intent = new Intent(this, Flippin.class);
PendingIntent pi = PendingIntent.getActivity(this, 0, intent, 0);
String body = "This is a message from Adam";
String title = "One new Task";
NotificationCompat.Builder n = new NotificationCompat.Builder(this);
n.setContentIntent(pi);
n.setSmallIcon(R.drawable.notif);
n.setContentTitle(title);
n.setContentText(body);
n.setDefaults(Notification.DEFAULT_ALL);
n.setAutoCancel(true);
nm.notify(uniqueID, n.build());
finish();
}