2010-03-19 43 views
2

總之,我正在尋找IAlarmManager的實現。在Android中找不到某些實現類

我對由AlarmManager.setInexactRepeating方法完成的調度感興趣,所以我開始尋找實現,但是我一直無法找到任何東西。在AlarmManager的內部,我可以看到實際的工作是由android.app.IAlarmManager接口完成的。在google搜索了一下之後,似乎引用了一個名爲android.app.IAlarmManager.Stub的實現類,但這是我得到的。 我正在使用Android 1.6。

回答

4

IAlarmManager是AIDL接口 - 用於RPC調用遠程Service

IAlarmManager.Stub是嵌套的靜態類,用於獲取和引用遠程服務 - 您將通過接口公開的Service將擴展* .Stub類。 關於使用AIDL的更多信息,請看這裏:http://developer.android.com/guide/developing/tools/aidl.html

您正在尋找的具體服務叫做AlarmManagerService。你可以在這裏找到它的源代碼和setInexactRepeating()的執行:https://android.googlesource.com/platform/frameworks/base/+/froyo-release/services/java/com/android/server/AlarmManagerService.java
希望有幫助。

+0

這是完美的。非常感謝! – Crawlder 2010-03-21 12:15:53

+0

從Android 4.4.2開始,AIDL文檔是[here](http://developer.android.com/guide/components/aidl.html),而'setInexactRepeating()'的實現是[here](https: //github.com/android/platform_frameworks_base/blob/master/core/java/android/app/AlarmManager.java)。 'AlarmManager'中'IAlarmManager'的實現是[here](https://github.com/android/platform_frameworks_base/blob/master/services/java/com/android/server/AlarmManagerService.java)。 – anon 2014-03-02 02:06:24

相關問題