android设置默认启动热点,android源码中修改wifi热点默认始终开启(示例代码)

在项目\frameworks\base\wifi\java\android\net\wifi\WifiStateMachine.java里面,有如下的代码,是设置wifi热点保持状态的:如下:

private class HotspotAutoDisableObserver extends ContentObserver {

public HotspotAutoDisableObserver(Handler handler) {

super(handler);

mContext.getContentResolver().registerContentObserver(Settings.System.getUriFor(

Settings.System.WIFI_HOTSPOT_AUTO_DISABLE), false, this);

}

@Override

public void onChange(boolean selfChange) {

super.onChange(selfChange);

mDuration = Settings.System.getInt(mContext.getContentResolver(), Settings.System.WIFI_HOTSPOT_AUTO_DISABLE,

Settings.System.WIFI_HOTSPOT_AUTO_DISABLE_FOR_FIVE_MINS);

if (mDuration != Settings.System.WIFI_HOTSPOT_AUTO_DISABLE_OFF && mPluggedType == 0) {

if (mClientNum == 0 && WifiStateMachine.this.getCurrentState() == mTetheredState) {

mAlarmManager.cancel(mIntentStopHotspot);

Xlog.d(TAG, "Set alarm for setting changed, mDuration:" + mDuration);

mAlarmManager.set(AlarmManager.RTC_WAKEUP,

System.currentTimeMillis() + mDuration * HOTSPOT_DISABLE_MS, mIntentStopHotspot);

}

} else {

mAlarmManager.cancel(mIntentStopHotspot);

}

}

}

修改默认值为始终:

mDuration = Settings.System.getInt(mContext.getContentResolver(), Settings.System.WIFI_HOTSPOT_AUTO_DISABLE,

Settings.System.WIFI_HOTSPOT_AUTO_DISABLE_OFF);

另外,System.xxxx的常量定义在源码中的路径:项目\frameworks\base\core\java\android\provider\Settings.java

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值