當我在Gmail客戶端收到一封電子郵件時,我想在GmailService類中運行方法CippaLippa()。服務工作幾個小時,比沒有更多的響應
我有一個接收器和AndroidManifest服務...
<receiver
android:name="com.myapp.receiver.GmailReceiver">
<intent-filter>
<action
android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
<service
android:name="com.myapp.service.GmailService"
android:label="@string/app_name" />
和這些類...
public class GmailReceiver extends BroadcastReceiver {
@Override
public void onReceive(final Context context, final Intent intent) {
final SharedPreferences preferences = context.getSharedPreferences("myapp.prefs", 0);
context.startService(new Intent(context, GmailService.class));
}
}
public class GmailService extends Service { .. etc...}
我的問題:一切正常,正確的幾個小時,當我收到來自Gmail的通知,CippaLippa()方法觸發......幾個小時後,當我收到gmail通知時,CippaLippa()方法不再觸發。
也許,有一種方法可以告訴GmailService類「保持活躍」並繼續監控Gmail事件嗎?我認爲這不是由於Android操作系統殺死未使用的類,因爲這是一個後臺服務,而不是一個活動。 我不知道。
我在網上讀到這個技巧,理論上......但是,在實踐中,我通過這種方式閱讀了某人,之後,Android殺死了他的服務以釋放內存,服務重新加載......但之後6個小時!! – Geltrude 2011-04-05 07:59:27