对于想了解设置Android设备WIFI在休眠时永不断开的代码实现的读者,本文将提供新的信息,我们将详细介绍安卓11wifi休眠,并且为您提供关于adb通过wifi连接android设备、adb通过w
对于想了解设置Android设备WIFI在休眠时永不断开的代码实现的读者,本文将提供新的信息,我们将详细介绍安卓11wifi休眠,并且为您提供关于adb通过wifi连接android设备、adb通过wifi连接android设备流程解析、Android - 永不锁屏,开机不锁屏,删除设置中休眠时间选项、Android ::如何从WiFi网络断开连接?的有价值信息。
本文目录一览:- 设置Android设备WIFI在休眠时永不断开的代码实现(安卓11wifi休眠)
- adb通过wifi连接android设备
- adb通过wifi连接android设备流程解析
- Android - 永不锁屏,开机不锁屏,删除设置中休眠时间选项
- Android ::如何从WiFi网络断开连接?
设置Android设备WIFI在休眠时永不断开的代码实现(安卓11wifi休眠)
MainActivity如下:
package cc.ab; import android.os.Bundle; import android.provider.Settings; import android.app.Activity; /** * Demo描述: * 设置设备在睡眠期间始终保持WLAN开启. * * 参考资料: * 1 http://stackoverflow.com/questions/8652031/how-to-modify-wi-fi-sleep-policy-programmatically/8655070#8655070 * 2 http://blog.csdn.net/mrlixirong/article/details/24938637 * Thank you very much * * 注意事项: * 1 这里使用的是android.provider.Settings.System.WIFI_SLEEP_POLICY * 而不是Settings.System.WIFI_SLEEP_POLICY!!!!!!!!!!!!!!!!!!!!!!! * * 2 权限<uses-permission android:name="android.permission.WRITE_SETTINGS"/> * * 3 在实际项目中,这么强制性地设置WIFI在休眠时永不断开有些粗鲁了. * 可以先记录下WIFI原本的策略,待我们的逻辑完成后再还原回去为好. */ public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); setWifiNeverSleep(); } private void setWifiNeverSleep(){ int wifiSleepPolicy=0; wifiSleepPolicy=Settings.System.getInt(getContentResolver(),android.provider.Settings.System.WIFI_SLEEP_POLICY,Settings.System.WIFI_SLEEP_POLICY_DEFAULT); System.out.println("---> 修改前的Wifi休眠策略值 WIFI_SLEEP_POLICY="+wifiSleepPolicy); Settings.System.putInt(getContentResolver(),Settings.System.WIFI_SLEEP_POLICY_NEVER); wifiSleepPolicy=Settings.System.getInt(getContentResolver(),Settings.System.WIFI_SLEEP_POLICY_DEFAULT); System.out.println("---> 修改后的Wifi休眠策略值 WIFI_SLEEP_POLICY="+wifiSleepPolicy); } } <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /> </RelativeLayout>
代码如上,不过在实际项目中,这么强制性地设置WIFI在休眠时永不断开有些粗鲁了.
可以先记录下WIFI原本的策略,待我们的逻辑完成后再还原回去为好.
您可能感兴趣的文章:
- Android编程实现屏幕禁止休眠的方法
- Android系统永不锁屏永不休眠的方法
- 设置Android系统永不锁屏永不休眠的方法
- 探讨:如何修改Android超时休眠时间
- Android 手机防止休眠的两种实现方法
adb通过wifi连接android设备
在开发的过程中大家一般都会选择使用数据线连接的方式进行调试,但是有些时候比如使用模拟器时就不能这样了,所以有必要来研究下怎么使用adb通过wifi连接我们的Android;
那么我们今天分别使用adb连接移动设备,模拟器
case 1:连接Android移动设备
1.USB连接手机和电脑;
2.运行 adb devices,测试是否连接成功,能出现设备列表即可;
3.运行
adb tcpip 5555
然后断开 USB 连接。
4.通过手机状态信息,查看手机的IP地址,一般会在【设置】-【关于手机】-【状态信息】找到IP地址。
5.运行
adb connect 192.168.2.100
若出现:
connected to 192.168.2.100:5555
说明连接成功。
7.相关命令
adb disconnect 192.168.2.100 # 断开无线连接
adb kill-server # 重新启动adb
case 2:连接模拟器
模拟器或者电视盒子在已知adb调试端口的情况下可以直接通过adb connect xxx.xxx.xxx.xxx:xxxx(模拟器或盒子的IP:adb调试端口),
通过adb devices看到已经连接的设备
常见模拟器adb端口如下图所示:
adb通过wifi连接android设备流程解析
在开发的过程中大家一般都会选择使用数据线连接的方式进行调试,但是有些时候比如使用模拟器时就不能这样了,所以有必要来研究下怎么使用adb通过wifi连接我们的Android;
那么我们今天分别使用adb连接移动设备,模拟器
case 1:连接Android移动设备
1.USB连接手机和电脑;
2.运行 adb devices,测试是否连接成功,能出现设备列表即可;
3.运行
adb tcpip 5555
然后断开 USB 连接。
4.通过手机状态信息,查看手机的IP地址,一般会在【设置】-【关于手机】-【状态信息】找到IP地址。
5.运行
adb connect 192.168.2.100
若出现:
connected to 192.168.2.100:5555
说明连接成功。
7.相关命令
adb disconnect 192.168.2.100 # 断开无线连接
adb kill-server # 重新启动adb
case 2:连接模拟器
模拟器或者电视盒子在已知adb调试端口的情况下可以直接通过adb connect xxx.xxx.xxx.xxx:xxxx(模拟器或盒子的IP:adb调试端口),
通过adb devices看到已经连接的设备
常见模拟器adb端口如下图所示:
详细内容请参考:https://developer.android.com/studio/command-line/adb
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
- Android adb命令中pm工具的作用及用法说明
- Android adb安装apk时提示Invalid APK file的问题
- python中adb有什么功能
- Android user版通过adb_enable开启adb 调试 不提示对话框的流程分析
- 详解adb shell 常用命令
- Android PC端用ADB抓取指定应用日志实现步骤
- python+adb命令实现自动刷视频脚本案例
- 详解android adb常见用法
Android - 永不锁屏,开机不锁屏,删除设置中休眠时间选项
http://www.jianshu.com/p/fdd2a0aabd23
Android 永不锁屏,开机不锁屏,删除设置中休眠时间选项
Android 6.0.1
1.Settings 删掉屏幕待机选项
packages/apps/Settings/res/xml/display_settings.xml
<!-- Hide screen sleep <ListPreference android:key="screen_timeout" android:title="@string/screen_timeout" android:summary="@string/screen_timeout_summary" android:persistent="false" android:entries="@array/screen_timeout_entries" android:entryValues="@array/screen_timeout_values" /> -->
注释掉这个 ListPreference
packages/apps/Settings/src/com/android/settings/DisplaySettings.java
添加 if 条件,如果没有找到这个 preference 就不执行相关操作;具体可以参考被隐藏的 night_mode
mScreenTimeoutPreference = (ListPreference) findPreference(KEY_SCREEN_TIMEOUT); if (mScreenTimeoutPreference !=null ) { final long currentTimeout = Settings.System.getLong(resolver, SCREEN_OFF_TIMEOUT, FALLBACK_SCREEN_TIMEOUT_VALUE); mScreenTimeoutPreference.setValue(String.valueOf(currentTimeout)); mScreenTimeoutPreference.setOnPreferenceChangeListener(this); disableUnusableTimeouts(mScreenTimeoutPreference); updateTimeoutPreferenceDescription(currentTimeout); }
2. 禁止锁屏
frameworks/base/packages/SettingsProvider/res/values/defaults.xml<bool name="def_lockscreen_disabled">false</bool>
改为 true;即默认禁止锁屏
frameworks/base/core/res/res/values/config.xml<integer name="config_multiuserMaximumUsers">1</integer>
不允许多用户;即最大用户数为 1
分别编译 frameworks/base/packages/SettingsProvider 与 frameworks/base
编译后 push 到 system/priv-app/SettingsProvider/SettingsProvider.apk system/framework/framework.jar
删去机器中对应的 oat 目录。重启或恢复出厂设置。第一次开机时,会先出现 status bar,launcher 要等一会才出来。
之后重启就可以直接进入 launcher。机器会默认不锁屏。但还是会进入 sleep 状态。
源码流程:
frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
if (upgradeVersion == 54)// 版本为54才会设置timeout ...... private void upgradeScreenTimeoutFromNever(SQLiteDatabase db) { // See if the timeout is -1 (for "Never"). Cursor c = db.query(TABLE_SYSTEM, new String[] { "_id", "value" }, "name=? AND value=?", new String[] { Settings.System.SCREEN_OFF_TIMEOUT, "-1" }, null, null, null); SQLiteStatement stmt = null; if (c.getCount() > 0) { c.close(); try { stmt = db.compileStatement("INSERT OR REPLACE INTO system(name,value)" + " VALUES(?,?);"); // Set the timeout to 30 minutes in milliseconds loadSetting(stmt, Settings.System.SCREEN_OFF_TIMEOUT, Integer.toString(30 * 60 * 1000)); } finally { if (stmt != null) stmt.close(); } } else { c.close(); } } ...... if (SystemProperties.getBoolean("ro.lockscreen.disable.default", false) == true) { loadSetting(stmt, Settings.System.LOCKSCREEN_DISABLED, "1"); } else { loadBooleanSetting(stmt, Settings.System.LOCKSCREEN_DISABLED, R.bool.def_lockscreen_disabled); }
timeout 若是 - 1,则永不锁屏
读取 "ro.lockscreen.disable.default",如果默认为 true,则设置禁止锁屏;否则从 xml 中读配置
frameworks/base/packages/SettingsProvider/res/values/defaults.xml
<integer name="def_screen_off_timeout">60000</integer>
<bool name="def_lockscreen_disabled">false</bool>`
禁止锁屏默认为 false
Android ::如何从WiFi网络断开连接?
解决方法
这是我通常使用的最简单的方法:
WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE); wifi.disconnect(); discon = new disconnectWifi(); registerReceiver(discon,new IntentFilter(WifiManager.SUPPLICANT_STATE_CHANGED_ACTION));
哪里disconnectWifi只是一个小类扩展broadcastReceiver:
public class disconnectWifi extends broadcastReceiver { @Override public void onReceive(Context c,Intent intent) { if(!intent.getParcelableExtra(wifi.EXTRA_NEW_STATE).toString().equals(SupplicantState.SCANNING)) wifi.disconnect(); } }
关于设置Android设备WIFI在休眠时永不断开的代码实现和安卓11wifi休眠的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于adb通过wifi连接android设备、adb通过wifi连接android设备流程解析、Android - 永不锁屏,开机不锁屏,删除设置中休眠时间选项、Android ::如何从WiFi网络断开连接?等相关内容,可以在本站寻找。
本文标签: