——闹钟分析透彻,有点基础都能看懂!1设置定时时间文件:packages/apps/alarmclock//android/alarmclock/(Contextcontext,finalAlarmalarm, finallongatTimeInMillis){ AlarmManageram=(AlarmManager) (); ... (,atTimeInMillis,sender); ... }由闹钟管理器设置定时时间。:frameworks/base/core/java/android/app/=0; publicstaticfinalintRTC=1; publicstaticfinalintELAPSED_REALTIME_WAKEUP=2;publicstaticfinalintELAPSED_REALTIME=3; AlarmManager(IAlarmManagerservice){ mService=service; } publicvoidset(inttype,longtriggerAtTime,PendingIntentoperation){ try{ (type,triggerAtTime,operation); }catch(RemoteExceptionex){ } }将type,triggerAtTime,operation等参数转向闹钟管理器服务。3闹钟管理器服务文件:frameworks/base/services//android/server/(Contextcontext){ mDescriptor=init(); ...}publicvoidset(inttype,longtriggerAtTime,PendingIntentoperation){ setRepeating(type,triggerAtTime,0,operation); } publicvoidsetRepeating(inttype,longtriggerAtTime,longinterval, PendingIntentoperation){ if(operation==null){ (TAG,"set/setRepeatingignoredbecausethereisnointent");
android闹钟功能报告 来自淘豆网m.daumloan.com转载请标明出处.