Android で「パルス通知ライト」/トラックボール ライトの設定を変更する (Nexus One のみ?)

StackOverflow https://stackoverflow.com/questions/2211543

質問

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 この画面には他にも多くのものが存在するため、プラットフォームのソースを調べました。NoticeManagerService には関連する部分がいくつかあります。 タグ付き通知をキューに入れる そして 更新ライトロック済み. 。それは次のようになります ハードウェアサービス これは、ユーザー設定を気にする段階をはるかに超えているようです。この設定がどこに実装されているのか、どのように影響するのかわかりません。

私は答えが「これには API がありません」 (おそらく Nexus One 固有であることに関連している) であると完全に予想しており、私にできる最善のことは (Locale または他の何かを使用して) インテントをスケジュールすることです。 ACTION_DISPLAY_SETTINGS ボックスを手動で設定するように思い出させるためですが、それは最悪です。何かを見逃していることを願っています、または Google 社員がこれを読んでいます これが API に追加される予定であることを教えてください。

役に立ちましたか?

解決

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

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

を使用して見つかりました sqlite3 自分のデバイス上で。

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

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top