デバイスが低電力 (スリープ) モードのときにタイマーが期限切れになったときに起動されるタイマーを起動したいと考えています。
デバイスは、ハードウェア イベント (電源ボタンの押下) またはネットワーク アクティビティ (通話またはデータ パケットの受信) のいずれかでのみウェイクアップ (通常モード) されます。
Androidのネイティブレイヤーでタイマーを使用してデバイスを通常モードに戻す方法はありますか?
私はとてもグーグルで検索しましたが、方法を見つけることができませんでした。timer_create() も使用してみました。ただし、デバイスが低電力 (スリープ) モードの場合は起動しません。
誰かがこの部分ですでにやったことがあれば教えてください。
実際に必要な精度はミリ秒単位であり、RTC_WAKEUP を使用した AlarmManager は、遅延を考慮した後に期限切れになるアプリケーション層にあり、これも Java 層にあります。(Jni を実装すると、スリープ モードで実行する必要があるタイマーが複数あるため、アプリケーションにオーバーヘッドが発生します)。