Android网络
文章平均质量分 87
峥嵘life
目前职业:android开发工程师
2016年江西农业大学计算机信息工程学院毕业
展开
-
Android wifi主要广播详解
wifi应用开发肯定会用到wifi开关和wifi连接状态监听的广播,有些广播比较容易混淆,本文进行详细总结。比如wifi网络变化广播:CONNECTIVITY_ACTION、WIFI_STATE_CHANGED_ACTION、NETWORK_STATE_CHANGED_ACTION 这三个比较容易搞混。SUPPLICANT_STATE_CHANGED_ACTION 和 SUPPLICANT_CONNECTION_CHANGE_ACTION 比较容易搞混。原创 2024-08-29 14:41:07 · 1480 阅读 · 0 评论 -
Android 获取ip地址多种方式介绍
adb shell 的 ifconfig可以获取当前设备网络节点信息;这些信息使用Android代码也是可以获取的;Android 获取网络ip有多种方式,有时候某种方式获取失败的情况下;那么就可以换一种获取方式,所有多学习一下获取网络ip相关信息是有用的。本文介绍三种获取网络ip信息的方式,并且最后一种的代码不用任何权限就能获取到相关节点的ip和MAC地址,有兴趣的可以看看。原创 2024-08-29 10:55:12 · 2194 阅读 · 0 评论 -
Android14 以太网共享功能 相关代码简介
Android 的以太网共享功能是啥?其实就是 Android设备接入一个网线后,再接入电脑,电脑就可以分配到到一个ip;这里的Android 设备就相当于一个路由器。如果Android设备可以正常上网,那么电脑也是可以上网的;Android 的以太网共享功能简单的说就是把Android设备的网络通过网线的形式共享给其他设备。Android手机设备基本没有网口,可以通过usb Hab转接网口;一些调试用的Android 设备是保存有网口的,可以直接接入网线。原创 2024-08-25 19:04:08 · 1165 阅读 · 1 评论 -
Android 系统连接WIFI显示网络连接受限分析处理
Android 系统连接WIFI提示网络受限处理这个是比较常见的问题了,这里简单记录一下。Android原生系统连接国内wifi网络会提示不可用,之后显示网络受限,但是实际可以上网;连接国外VPN网络是没有这个问题的。这个问题的原因就是系统连接上wifi后校验网络的时候,使用的是一个国外的url地址,但是国内外访问这个地址是无法返回数据的,所以系统才会判断该wifi无法连接网络。要解决这个问题,有两种方法:一个是替换了校验网络的url地址,另外一个是去除这个校验过程。原创 2024-08-25 19:02:33 · 1286 阅读 · 0 评论 -
wifi代理、静态ip设置无效解决
Android 系统中如果是自己开发的应用,需要连接网络设置静态ip或者代理信息,可能会出现设置的代理信息后无效的情况,自己应用配置的代理信息,在原生Settings也能同步显示,但是浏览器并没有更新代理设置的信息,比如设置代理后不弹框提示代理登录,需要关开一次wifi才生效,或者关闭代理后依然弹框提示代理登录,需要关开一次wifi才生效,具体原因是网络信息没有被重新加载。这里简单记录一下。原创 2024-07-11 19:28:44 · 578 阅读 · 0 评论 -
Android 使用adb操作WiFi连接扫描等相关指令
Android系统调试是,如果没有系统原生设置应用又需要调试验证WiFi功能时,可以使用一些指令来验证调试WiFi相关功能,最常用的就是 svc wifi enable/disable,或者使用iv dev来验证,但对于AP功能就没办法验证了,并且可调试功能比较少,其实Android系统自带有组很强大的shell指令集,这里记录下平时使用的cmd wifi 相关指令。系统初期开发或者定位一下wifi、热点问题会比较有用。原创 2024-06-28 15:11:56 · 4801 阅读 · 1 评论 -
Android 打开热点2.4G系统重启解决
Android 设备开机后第一次打开热点2.4G系统重启?以5G形式打开热点没有问题!这个问题咋回事呢?和底层驱动的人一起分析了一下,本文进行分享一下分析和解决过程。这种问题一般应用开发不会遇到,只有一些系统开发,或者系统新方案调试可能会遇到。查看了AndroidRuntime 和crash 日志,重启前没啥异常日志。这种情况一般是底层/驱动未完全适配导致。原创 2024-01-06 14:32:12 · 1653 阅读 · 2 评论 -
Android13 热点默认5G频道配置修改
Android开发中经常要设置默认热点,名称,热点密码,是否是5G频段。之前也有对默认名称和密码进行分析的文章,但是热点频道没怎么看,热点频段对传输性能还是比较重要的,有的平台默认就要5G,查看代码发现默认是2.4G热点。本文对 Android 默认热点5G频段配置 进行分析。wifi信息保存位置:热点信息保存位置:热点的信息文件包含了:热点名称,热点密码,热点频段和信道值等基本信息;wifi 的信息文件包含了:连接过的wifi名称,密码,MAC地址等信息。原创 2024-01-02 20:55:28 · 3953 阅读 · 1 评论 -
Android 实现热点开机后自动开启
Android 热点是有api设置永久开启,热点名称,热点密码等接口,但是“永久开启”实际上是不自动关闭,重启设备后热点并不会自动开启。Android Wifi实现开关状态记忆是基于Settings.GLOBAL.WIFI_ON属性,所以热点如果要实现状态记忆那么也是要设置一个Settings属性或者prop属性,系统启动后判断属性决定是否启动热点就可以实现热点状态记忆了。Android Wifi有自己的服务WifiService和服务实现WifiServiceImpl,原创 2023-12-21 20:33:00 · 4435 阅读 · 2 评论 -
Android13 Wifi启动流程分析
本文对Android13 wifi 开启流程进行梳理,有需要的可以看看。如果遇到wifi 打不开问题,可以依照这个流程进行分析,看看具体是哪个流程出现问题。如果后续需要分析比Android13 更新的代码可以对比参考,毕竟Android11的代码变动比较大。本文最后有流程总结,代码分析过程还有最大一个亮点,每个类的流程分析都标志了数字,避免读着读着就迷路了。最后还有wifi开关相关日志过程分析。原创 2023-12-21 20:16:09 · 3397 阅读 · 4 评论 -
Android 13 设置静态ip导致有线网一直断开重连分析解决
本文分享一个Android13 有线网的bug!或者说新的有线网络的一个修改。Android13 设置静态ip地址发现一个问题,有线网会一直断开重连。设置正常的网关没有这个问题,设置错误的网关就会有这个问题。原创 2023-06-19 22:01:05 · 2520 阅读 · 2 评论 -
Android 13 wifi adb设置固定端口解决
Android13 wifi adb 做了一些变更,不管是代码层面还是用户使用层面都是做了修改!具体来说应该是Android12 就变更了,因为我之前一直开发Android11 网络,最近系统版本变更到 Android13 ,发现代码上确实做了较多变更。代码层面的修改:以前wifi 和 有线网络的系统逻辑都是在framework内,现在变成在package\modules\Connectivity下面蓝牙方面也是做了相当大的改动!这里不做分析。原创 2023-06-05 21:23:36 · 7648 阅读 · 9 评论 -
Android 13 有线网变更(用到的可以收藏)
有线网设置新路径:try {try {try {从上面看,主要是api加了限制 :maxTargetSdk = Build.VERSION_CODES.R //Android11maxTargetSdk 表明最大支持的SDK 版本,R 表示Android11 .所以Android 12 或者更新的版本,在EthernetManager 是调用不到上面几个接口方法的!(1) 限制了设置有线网参数设置 setConfiguration 接口方法 等方法使用。原创 2023-05-10 19:00:38 · 3425 阅读 · 10 评论 -
Android13 wifi状态问题分析
Android 默认的校验机制,无法访问google的情况或者连接连接网络比较慢的情况,会设置该wifi 默认不进行自动连接状态。明明关闭后,并且查询到 wifi_on 属性值为 0 ,硬重启后,查询 wifi_on 属性值为 1,wifi 处于开启状态。并且第一个wifi,是出现有timeout 的情况,需要时间十几秒,第二个是正常的情况,一般两三秒就可以。2、连接某个wifi,再连接一个wifi,断开当前连接的WiFi,未自动连接之前连接的wifi。硬重启的情况,内存数据未成功保存到flash中导致。原创 2023-04-27 17:27:31 · 2099 阅读 · 0 评论 -
Android11 wifi密码类型判断和总结
ScanResult ,扫描到的wifi列表的单个 wifi 信息对象,普通应用中使用WifiConfiguration , 已保存的单个 wifi 数据对象,提取了ScanResult 对象部分信息, 普通应用中使用AccessionPoint ,提取了ScanResult 对象部分信息,比 WifiConfiguration 做了更多的封装(加了加密类型字符串和int值,wifi信号的获取等),一般是系统应用使用,比如原生Settings。并且必要条件是导入SettingsLib这个系统Jar包。原创 2023-04-12 20:55:11 · 2363 阅读 · 2 评论 -
Android11 Wifi Mac地址设置随机或者固定分析
Android 8.0 开始,设备开始支持Wifi 随机MAC,说是为了安全。很多手上也能看到Wifi 默认使用的是随机MAC地址。但是有些情况下,需要固定MAC,比如有些OTA升级用的是Wifi MAC地址,这时候就要MAC固定。所以有必要对设备 Wifi MAC地址进行研究。网上搜索了一下,只有下面这个需要csdn 付费的文章:网上这个文章是Android10 的,文件位置和主要逻辑可能在其他版本有一定是变化。从目前接触的framework 网络部分代码来看,原创 2023-03-06 22:49:28 · 9137 阅读 · 0 评论 -
Android11 热点配置信息保存分析
本文分析热点信息保存生成的文件位置。通过本文可以大致了解保存/获取热点信息过程,并且了解热点配置文件生成的具体文件位置。直接从网上搜索很多都是说这个目录:/data/misc/wifi/softap.confAndroid11 wifi信息保存位置:/data/misc/apexdata/com.android.wifi/WifiConfigStore.xml热点信息保位置:/data/misc/apexdata/com.android.wifi/WifiConfigSto原创 2023-01-07 18:07:28 · 3507 阅读 · 2 评论 -
Android11 有线网Score分析流程
本文只对有线网score分值流程做详细分析。之前搞Android 有线网络和wifi,同时连通,并且设置优先级。已实现可以随时切换网络优先级。刚开始是生效的,系统合入新TAG后,发现之前设置的优先级无效的!所以网络优先级设置流程还是需要梳理,出现问题好定位解决。Android网络的Score值,分值越高,越优先。默认Score为:所以为啥Android手机连接wifi默认使用的是WiFi的网络。但是有时候又会切换到手机网络,估计是有监听wifi信号情况,动态切换Score 来实现的。本文主要是对有原创 2022-12-06 22:15:04 · 2029 阅读 · 0 评论 -
Android11 热点设置永不关闭
Android 热点默认是10 分钟后没有设备关联是会自动关闭,如果需要设置默认不关闭热点可以有几种方式。直接break;或者retrun;跳过后续关闭热点操作。原创 2022-11-07 19:58:22 · 3813 阅读 · 3 评论 -
Android11 设置默认热点名称和热点密码、密码长度
热点默认名称和密码都是在 WifiApConfigStore 类中定义可以自定修改默认热点名称是 AndroidAP + 随机生成的1000-9999的数字默认热点密码是15位随机生成的数字/字母普通字符串。原创 2022-11-07 19:35:40 · 5658 阅读 · 7 评论 -
Android10 系统应用wifi连接和静态ip代理设置
Android10 系统应用wifi连接和静态ip代理设置如果是Android10或者更新的Android版本wifi开发,本文对你或许有一定的帮助。文章目录Android10 系统应用wifi连接和静态ip代理设置Android wifi连接和静态ip代理设置 主要针对系统应用wifi连接的主要代码:WifiConfiguration对象构建其他共勉:努力学习自己应该掌握的知识。Android wifi连接和静态ip代理设置 主要针对系统应用wifi连接的主要代码:Android 9 以及之前的原创 2022-03-23 00:17:28 · 5428 阅读 · 2 评论 -
Android11 有线网和wifi优先级设置
Android11 有线网和wifi优先级设置文章目录Android11 有线网和wifi优先级设置一、优先级基本知识介绍系统默认分值:二、有线网络优先级设置1、在Android9.0设置有线网络优先级直接修改EthernetNetworkFactory.java的 NETWORK_SCORE 值就行2、在Android11 修改有线网络优先级三、网络优先级简单刨析1、网络切换的主要逻辑都是在 ConnectivityService.java里面2、优先级评分逻辑主要在evalRequest方法3、要理解原创 2021-12-30 19:04:52 · 9189 阅读 · 3 评论 -
Android9、11 有线网络开关设置
Android9 有线网络开关设置一、定义数据1、Setting中定义数据2、定义默认值3、添加默认定义值Android9 、11有线网络开关设置Android系统开发中发现,Android8以后有线网络开关没有api了,需要自己进行通路建造,或者自己实现开关控制。这部分修改在Framework 的Java层进行修改即可完成。总体思路:1、有线网络开关控制是在EthernetService.java,但是具体实现是在EthernetServiceImpl.java和EthernetTracker原创 2021-12-30 18:56:46 · 7468 阅读 · 2 评论 -
Android adb查看网络连接情况
Android 使用adb查看网络使用情况主要的adb命令:adb shell ifconfig //查看配置信息adb shell dumpsys connectivity //查看连接情况db shell netstat //查看连接状态和地址adb shell ip ru //查看路由策略原创 2021-12-26 21:58:23 · 24844 阅读 · 0 评论 -
使用cmd根据WSDL网址生成java客户端代码
使用cdm根据WSDL网址生成java客户端代码 windows下使用cmd命令提示符生成java webservice客户端代码,可以使用命令提示符直接生成客户端代码,直接导入到项目中,只需配置jdk即可,在jdk的bin文件夹下,按Shift并点击右键,选中“在此处打开命令窗口”,输入命令如下。原创 2017-03-30 10:52:19 · 27097 阅读 · 4 评论 -
Android框架之Gson解析
AndroidStudio插件GsonFormat快速实现把Json数据转换为JavaBean,方便数据的获取安装 ,然后把通过Gson类转换json数据到bean中。原创 2016-12-04 15:40:59 · 949 阅读 · 0 评论 -
okHttp详细日志打印
okHttp详细日志打印本文简单介绍下使用okHttp后如何打印详细日志的简单完成。我们使用okHttp、Retrofit来请求网络都是okHttp的基础类来进行网络请求的。OkHttp也提供了一个网络拦截器okhttp-logging-interceptor,通过它能拦截okhttp网络请求和响应所有相关信息(请求行、请求头、请求体、响应行、响应行、响应头、响应体)。OkHt...原创 2018-07-11 23:52:20 · 19583 阅读 · 1 评论 -
Android-PullToRefresh下拉上拉刷新的库基本用法
PullToRefresh的基础知识PullToRefresh是一套实现非常好的下拉刷新库,它支持: ListView 、ExpandableListView 、GridView 、WebView 、ScrollView 、HorizontalScrollView 、ViewPager 等多种常用的需要刷新的View类型,而且使用起来也十分方便。原创 2016-12-08 19:50:51 · 2278 阅读 · 2 评论 -
3D标签云效果的实现
TagCloudView是一个完全基于Android ViewGroup编写的控件,支持将一组View展示为一个3D标签云,并支持全方向滚动。 GitHub中的链接地址:https://github.com/misakuo/3dTagCloudAndroid原创 2016-12-08 14:28:14 · 6857 阅读 · 2 评论 -
Android网络框架之数据库框架litePal
LitePal是一款开源的Android数据库框架,采用了对象关系映射(ORM)的模式,将平时开发时最常用的一些数据库功能进行了封装,使得开发者不用编写一行SQL语句就可以完成各种建表、増删改查的操作。并且LitePal很”轻”,jar包大小不到100k,而且近乎零配置,这一点和Hibernate这类的框架有很大区别。目前LitePal的源码已经托管到了Git原创 2016-12-05 20:26:01 · 851 阅读 · 0 评论 -
Android框架之图片框架Glide
Glide是网络框架中加载图片最简单使用的一种工具。原创 2016-12-04 13:20:12 · 818 阅读 · 0 评论 -
okhttp网络请求的简单示例
okhttp网络请求的功能还是比较强大的。这里这是简单的演示:字符串数据的请求和json数据的请求。AndroidStudio使用okhttp之前添加依赖就可以了:原创 2016-12-04 12:38:42 · 7671 阅读 · 2 评论 -
Android网络框架Retrofit的综合使用
Retrofit和OkHttp师出同门,也是Square的开源库,它是一个类型安全的网络请求库,Retrofit简化了网络请求流程,基于OkHtttp做了封装,解耦的更彻底。原创 2016-12-10 16:04:35 · 1525 阅读 · 0 评论 -
Android三级缓存机制工具类的实现
三级缓存的三级第一级是内存,最快,不需要网络第二级是本地,不需要网络第三级是网络,需要网络请求 ;原创 2016-11-18 11:20:15 · 6586 阅读 · 0 评论 -
Android网络数据JSON解析使用总结
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 易于人阅读和编写。同时也易于机器解析和生成。原创 2016-11-16 13:50:51 · 13209 阅读 · 10 评论 -
Vitamio的使用
vitamio是一款android以及ios视频播放的开源框架。原创 2016-12-22 12:41:48 · 5470 阅读 · 0 评论 -
Android网络框架xUtils的Http网络数据请求操作
xUtils:当前比较火的框架,并且用处也是比较多。一.目前xUtils主要有四大模块: DbUtils模块:用于数据库的操作,也是需要注解方式指定表名和列名; ViewUtils模块:注解方式就可以进行UI,资源和事件绑定; HttpUtils模块:用于网络数据的请求; BitmapUtils模块:用于图片的下载和绑定视图;本文主要讲解xUtils中的Http网络数据请求操原创 2016-12-09 20:02:04 · 5287 阅读 · 0 评论 -
Android网络框架xUtils中的View的视图绑定注解操作
xUtils:当前比较火的框架,并且用处也是比较多。一.目前xUtils主要有四大模块: DbUtils模块:用于数据库的操作,也是需要注解方式指定表名和列名; ViewUtils模块:注解方式就可以进行UI,资源和事件绑定; HttpUtils模块:用于网络数据的请求; BitmapUtils模块:用于图片的下载和绑定视图;原创 2016-12-09 17:07:19 · 1556 阅读 · 0 评论 -
android NSD服务详解
android NSD服务详解一.NSD的基础知识:NSD全称为: Network Service Discovery.翻译过来的意思就是发现服务器网络的意思。理解的说就是:发现服务器对应的网络信息。 作用为: The addition of Network Service Discovery (NSD) takes this further by allowing an application原创 2018-03-15 23:46:31 · 8928 阅读 · 12 评论 -
OSI七层协议和Tcp/Ip四层协议
OSI七层协议和Tcp/Ip四层协议OSI是Open System Interconnection的缩写,意为开放式系统互联。国际标准化组织(ISO)制定了OSI模型。这个模型把网络通信的工作分为7层,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。TCP/IP模型也被称作DoD模型(Department of Defense Model)。TCP/IP字原创 2017-07-21 14:24:42 · 1286 阅读 · 0 评论