ダウンロードしたものは実際には「例」ではなく、システム アプリケーションのソースです。そのため、アプリは Android のソース コードに対して直接ビルドされるため、通常はアクセスできない SDK の特定の部分にアクセスできます。
ソースコードを見るとIntent
、次のスニペットが見つかります。
/**
* Alarm Changed Action: This is broadcast when the AlarmClock
* application's alarm is set or unset. It is used by the
* AlarmClock application and the StatusBar service.
* @hide
*/
@SdkConstant(SdkConstantType.BROADCAST_INTENT_ACTION)
public static final String ACTION_ALARM_CHANGED = "android.intent.action.ALARM_CHANGED";
@hide
Javadoc の最後の行にある注釈に注意してください。これは、定数がパブリック Android SDK の一部ではないことを示しています。Android SDK を作成するビルド プロセスの一部では、コンパイル対象android.content.Intent
のファイルにある のスタブ エディションにこのメンバーは含まれません。android.jar
注釈は、@hide
内部目的で公開または保護する必要があるものに使用されますが、SDK 開発者が使用する必要があるものとは見なされません。
また、この問題に関する @CommonWare の回答、またはGoogle グループの Romain Guy の回答も参照してください。
つまり、その定数は使用できません。文字列値 ( ) に置き換えてみることもでき"android.intent.action.ALARM_CHANGED"
ますが、開発者が利用できないのにはおそらく十分な理由があることを覚えておいてください。それを知っているので、それをまったく使用しようとしないでください。