3

Nexus One (少なくとも 2.1-update1 では、私は 2.1 だと思います) では、サウンドとディスプレイの下に「パルス通知ライト」という設定があります。これは、「2.1 with Google APIs」エミュレーター イメージには存在しないようです。他のデバイスはまだ確認していません。

パルス通知ライト: 新しい通知のためにトラックボール ライトを繰り返しパルスします http://chris.boyle.name/images/20100206-pulse-trackball.png

Localeプラグインを作成するために、ユーザーの操作なしでプログラムでこれを設定したいので、午前4時に誰かが私にスパムを送信したときに部屋をフラッドライトすることなく、デバイスが私の机で起きているときに私の注意を引くことができます。かなり明るいです。

この画面の他の多くのものが存在するandroid.provider.Settings.Systemには表示されなかったので、プラットフォームのソースを調べました。NotificationManagerService のenqueueNotificationWithTagupdateLightsLockedには関連する部分がいくつかあります。それは、ユーザー設定を気にするポイントをはるかに超えているように見えるHardwareServiceに進みます。この設定がどこに実装されているか、またはどのように影響を与えるかはわかりません。

答えは「これにはAPIがありません」(おそらくNexus One固有のものに関連している)であり、私ができる最善の方法は(Localeなどを使用して)ACTION_DISPLAY_SETTINGSのIntentをスケジュールして思い出させることであると私は完全に期待していますボックスを手動で設定するには、最悪です。私が何か見逃していることを願っていますか、それともGoogle 社員がこれを読んでいて、これが API に追加される予定であることを教えてくれることを願っていますか?

4

1 に答える 1

3

文書化されていない API (または、文書化されていないシステム設定名) を使用すると、痛々しく死ぬことになることはわかっていますが、魔法の行は次のとおりです。

android.provider.Settings.System.putInt(context.getContentResolver(),
        "notification_light_pulse", on ? 1 : 0);

sqlite3自分のデバイスで使用していることがわかりました。

便利な Locale プラグインでのこのソリューションは次のとおりです: http://chris.boyle.name/projects/ptlp

于 2010-02-16T01:29:53.717 に答える