Android Screen Timeout

前端 未结 4 791
感情败类
感情败类 2020-11-30 06:45

I know its possible to use a wakelock to hold the screen, cpu, ect on but how can I programmatically change the \"Screen Timeout\" setting on an Android ph

4条回答
  •  死守一世寂寞
    2020-11-30 07:26

    public class HelloWorld extends Activity 
    {
        private static final int DELAY = 3000;
        int defTimeOut = 0;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) 
        {
            // Be sure to call the super class.
            super.onCreate(savedInstanceState);
    
            // See assets/res/any/layout/hello_world.xml for this
            // view layout definition, which is being set here as
            // the content of our screen.
            setContentView(R.layout.hello_world);
            defTimeOut = Settings.System.getInt(getContentResolver(), 
                             Settings.System.SCREEN_OFF_TIMEOUT, DELAY);
            Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_OFF_TIMEOUT, DELAY);
        }
    
        @Override
        protected void onDestroy() 
        {
            super.onDestroy();
            Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_OFF_TIMEOUT, defTimeOut);
        }
    }
    

    And also dont forget to add this permission in manifest:

    android:name="android.permission.WRITE_SETTINGS"
    

提交回复
热议问题