このため
使用IHardwareService
インタフェース:
許可
<uses-permission android:name="android.permission.HARDWARE_TEST"></uses-permission>
変更のようなあなたのコード:
private void setBrightness(int brightness) {
try {
IHardwareService hardware = IHardwareService.Stub.asInterface(
ServiceManager.getService("hardware"));
if (hardware != null) {
hardware.setScreenBacklight(brightness);
}
} catch (RemoteException doe) {
}
ここChanging the Screen Brightness
ORあなたのケースでは、おそらく可能性の完全な例:ウィンドウが構築される前に、あなたはgetWindow().getAttributes()
行うことはできませんあなたがsetContentView(R.layout.main);
を実行した後に
WindowManager.LayoutParams lp = getWindow().getAttributes();
移動これ。
このように、あなたのコードは
public class MainActivity extends Activity {
/** Called when the activity is first created. */
// MY BRIGHTNESS VARIABLES
WindowManager.LayoutParams lp;
float fb;
float lb = 0;
float hb = 1;
//////////////////////////////////////////////////////////////////////////
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
lp = getWindow().getAttributes();
fb = lp.screenBrightness;
// MY CODE FROM HERE DOWN
Button button1=(Button)findViewById(R.id.button1);
button1.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if(lp.screenBrightness==fb) {
lp.screenBrightness=lb;
getWindow().setAttributes(lp);
}
if(lp.screenBrightness==lb){
lp.screenBrightness=hb;
getWindow().setAttributes(lp);
}
if(lp.screenBrightness==hb){
lp.screenBrightness=fb;
getWindow().setAttributes(lp);
}
}
});
//////////////////////////////////////////////
}
}
、これを試してみて、私が起こるか知ってみましょう。これを試してみてください実行されますが、画面に何も影響しません。 –
詳細については、[autobright](http://code.google.com/p/autobright/source/browse/trunk/autobright/src/com/geekyouup/android/autobright/AutoBright.java) – user370305
Hey Thanx it部門の255.0fを1500.0fに増やすことで機能します。 –