1. 亮度
-
参考这里的设置: LightUtils
-
系统应用,或者Root应用参考这个:
权限:
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
代码
Settings.System.putInt(MainActivity.this.getContentResolver(), Settings.System.SCREEN_BRIGHTNESS,12); //设置亮度,数值为 0-255 try { int b = Settings.System.getInt(MainActivity.this.getContentResolver(), Settings.System.SCREEN_BRIGHTNESS); //读取亮度的值。 Log.e("===","light:"+b); } catch (Settings.SettingNotFoundException e) { e.printStackTrace(); } 复制代码
-
调用系统的 Activity
startActivity(new Intent(Settings.ACTION_DISPLAY_SETTINGS));
2. 自动锁屏时间
系统应用,或者Root应用参考这个:
权限:<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
/**
* 获得锁屏时间 毫秒
*/
private int getScreenOffTime(){
int screenOffTime=0;
try{
screenOffTime = Settings.System.getInt(getContentResolver(), Settings.System.SCREEN_OFF_TIMEOUT);
}
catch (Exception localException){
}
return screenOffTime;
}
/**
* 设置背光时间 毫秒
* // 2147483647 为无限
*/
private void setScreenOffTime(int paramInt){
try{
Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_OFF_TIMEOUT, paramInt);
}catch (Exception localException){
localException.printStackTrace();
}
}
复制代码
3.时间与时区
-
系统权限,root应用,设置时间:
<uses-permission android:name="android.permission.SET_TIME"/>
boolean isSuc = SystemClock.setCurrentTimeMillis(curMs);//需要Root权限
扫描二维码关注公众号,回复: 5657069 查看本文章 -
设置时区,权限:普通应用层权限
<uses-permission android:name="android.permission.SET_TIME_ZONE" />
AlarmManager mAlarmManager = (AlarmManager)getSystemService(Context.ALARM_SERVICE); mAlarmManager.setTimeZone("Asia/Baku"); 复制代码
-
跳转系统设置页面:
startActivity(new Intent(Settings.ACTION_DATE_SETTINGS));
4.音量
调节音量的大小,可以直接调节:
- 调节大小根据系统的幅度去,
- 直接调节大小,调节幅度自定义
- 先获取AudioManager:
//音量控制,初始化定义
AudioManager mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
//最大音量
int maxVolume = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
//当前音量
int currentVolume = mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
复制代码
- 调节,渐进式,即像手动按音量键一样,一步一步增加或减少
public void adjustStreamVolume (int streamType, int direction, int flags)
参数说明:
int streamType 需要调整的音量类型
(以下常量定义于AudioManager类中)
STREAM_ALARM 警报
STREAM_MUSIC 音乐回放即媒体音量
STREAM_NOTIFICATION 窗口顶部状态栏Notification,
STREAM_RING 铃声
STREAM_SYSTEM 系统
STREAM_VOICE_CALL 通话
STREAM_DTMF 双音多频,不是很明白什么东西
int direction 调整的方向,加或者减。
(以下常量定义于AudioManager类中)
ADJUST_LOWER 降低音量
ADJUST_RAISE 升高音量
ADJUST_SAME 保持不变,这个主要用于向用户展示当前的音量
int flags 附加的一些参数
参数的说明参考API文档:http://www.android-doc.com/reference/android/media/AudioManager.html
FLAG_PLAY_SOUND 调整音量时播放声音
FLAG_SHOW_UI 调整时显示音量条,就是按音量键出现的那个
0表示什么也没有
复制代码
例子:
mAudioManager.adjustStreamVolume (AudioManager.STREAM_MUSIC, AudioManager.ADJUST_RAISE,
AudioManager.FLAG_SHOW_UI);
复制代码
- 直接设置音量值
public void setStreamVolume (int streamType, int index, int flags)
参数说明: 第一个,第三个和上面的一样
第二个参数:
int index: 把音量调整到index值。
这里,可以根据获取的最大音量去自己设置调整的幅度。
复制代码
例子:
这里是直接调整到最大的音量。
am.setStreamVolume(AudioManager.STREAM_MUSIC, am.getStreamMaxVolume(AudioManager.STREAM_MUSIC),
AudioManager.FLAG_PLAY_SOUND);
复制代码
- 音量按键的监听:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
switch (keyCode) {
case KeyEvent.KEYCODE_VOLUME_DOWN:
tv.setText("-----------------"+count);
count--;
return true;
case KeyEvent.KEYCODE_VOLUME_UP:
tv.setText("++++++++++++++++"+ count);
count++;
return true;
case KeyEvent.KEYCODE_VOLUME_MUTE:
tv.setText("MUTE");
return true;
}
return super.onKeyDown(keyCode, event);
}
复制代码
5. Wifi设置
- 不要试图监听连接WIFI的成功与否回调,不可能。虽然会有一个wifi连接失败的监听,但是不会告诉你,是哪一个wifi连接失败。