Android Tv wifi网络登录认证
Android Tv wifi网络登录认证
前言
现在商铺、酒店等公共场所的wifi 网络大多数都需要进行网络登录认证,但在android Tv上面系统设置上的wifi模块好像没有对此场景做出处理,必须要Tv上面安装了浏览器才能进行登录认证,为了解决用户的体验,所以在wifi模块添加自动弹出网络登录认证功能是很有必要的。
网络认证的步骤
连接wifi成功后请求服务器进行判断是否需要网络登录认证。
需要网络登录认证,打开webView 调转到网络认证登录网站。
1.判断wifi是否需要网络登录认证。
android 默认的请求服务器有2个 (前提是手机厂商没有修改这个默认的服务器)。
- http://connectivitycheck.gstatic.com/generate_204
- http://www.google.com/gen_204
对服务器进行请求,获取数据是否需要认证:如果返回204则不需要认证网络。
/*** 判断wifi是否需要Portal认证** @return true false*/public static boolean getWifiSetPortal(String Url) {int WALLED_GARDEN_SOCKET_TIMEOUT_MS = 2500;HttpURLConnection urlConnection = null;int code = 0;try {URL url = new URL(Url);urlConnection = (HttpURLConnection) url.openConnection();urlConnection.setInstanceFollowRedirects(false);urlConnection.setConnectTimeout(WALLED_GARDEN_SOCKET_TIMEOUT_MS);urlConnection.setReadTimeout(WALLED_GARDEN_SOCKET_TIMEOUT_MS);urlConnection.setUseCaches(false);urlConnection.getInputStream();code = urlConnection.getResponseCode();return code != 204;} catch (Exception e) {e.printStackTrace();return false;} finally {if (urlConnection != null) {urlConnection.disconnect();}}}
如果需要稳妥一点话,可以对2个服务器依次进行请求。
public static boolean isWifiSetPortal() {if (!getWifiSetPortal(DEFAULT_HTTP_URL)) {return !getWifiSetPortal(DEFAULT_FALLBACK_URL);}return false;}
2.需要网络登录认证,打开webView 调转到网络认证登录网站。
/*** webView 网络认证界面*/public class CaptivePortalLoginActivity extends Activity {private WebView mWifiLoginWeb;private String url = "http://www.baidu.com/";@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_portal);mWifiLoginWeb = (WebView) findViewById(R.id.wifi_login_web);setWeb();mWifiLoginWeb.loadUrl(url);}private void setWeb() {final WebSettings webSettings = mWifiLoginWeb.getSettings();webSettings.setJavaScriptEnabled(true);webSettings.setBuiltInZoomControls(true);webSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN);mWifiLoginWeb.setVisibility(View.VISIBLE);webSettings.setSupportZoom(true);webSettings.setDomStorageEnabled(true);mWifiLoginWeb.requestFocus();webSettings.setUseWideViewPort(true);webSettings.setLoadWithOverviewMode(true);webSettings.setSupportZoom(true);webSettings.setJavaScriptCanOpenWindowsAutomatically(true);mWifiLoginWeb.setWebViewClient(new WebViewClient() {@Overridepublic boolean shouldOverrideUrlLoading(WebView view, String url) {Log.d("setweb", url);return false;}});}}
布局文件
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical" android:layout_width="match_parent"android:layout_height="match_parent"><WebViewandroid:id="@+id/wifi_login_web"android:layout_width="match_parent"android:layout_height="match_parent"></WebView>
</FrameLayout>
启动wifi 登录activity之后,会自动的跳转到网络登录界面,然后用户需要输入用户名和秘密点击登录。
Android Tv wifi网络登录认证相关推荐
- 转用PHP开发企业Wifi网络Web认证系统(附源码)
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://beastwu.blog.51cto.com/5091229/865707 本案是 ...
- 用PHP开发企业Wifi网络Web认证系统(附源码)
文字转载自https://blog.51cto.com/beastwu/865707 本案是为客户的合作单位开发的无线网络的网页认证系统. 本系统实现基于Web的Windows Active Dire ...
- android tv wifi设置密码,android TV版 wifi 压力测试
代码完全模拟按键进行操作. 1.重启设备 2.等待设备adb 3.移动到wifi设置菜单 4.连接wifi 5.检测网络是否连通 6.抓取log和截图,并把log文件压缩. 7.忘记wifi密码 8. ...
- 英语august_独家:August Smart Lock缺陷向黑客开放您的Wi-Fi网络
英语august The security hole that Bitdefender found in the August Smart Lock Pro + Connect won't let a ...
- TRAI:大力发展印度公共Wi-Fi网络
据悉,印度电信管理局(TRAI)希望印度电信运营商和其他利益相关者为全国范围内可互操作和可扩展的公共Wi-Fi网络提出一个全新业务模式. 印度电信管理局(TRAI)相信,公共Wi-Fi网络可以有效补充 ...
- android wlan0 网卡过程,android WIFI网络驱动之wpa_supplicant程序详解
http://blog.csdn.net/wh_19910525/article/details/7392147 2012 目前可以使用wireless-tools 或wpa_supplicant工具 ...
- linux需要wifi网络认证,无线802.1x认证简介及配置方法
无线802.1x认证简介及配置方法 简介: 华东理工大学无线网络ECUST.1x(以ECUST.1x为例,ECUST-dorm.1x相同)采用802.1x接入方式,这是一种安全且方便的接入方式.第一次 ...
- Android wifi列表扫描 密码连接 多个wifi切换登录 广播状态等都在这里
Wi-Fi 前言 需求 实现 扫描wifi列表 wifi广播 wifi连接登录 总结 前言 app里有个需求就是在应用内部开发一个wifi设置的功能,避免用户跳到手机wifi设置界面操作,之前没开发过 ...
- 用Discuz/UCenter账号实现Wifi登录认证
如果你有一个用Discuz/UCenter构建的网站,还有自己的Wifi基站或热点,那你可以用Wiwiz为你的Wifi热点做一个入口登录页面.当 wifi终端用户连到你的热点时,打开任何网页都会先显示 ...
最新文章
- 201621123048《Java程序设计》第八周学习总结
- .net core 获取客户端ip
- 您没有足够的全新为该计算机所有用户安装,我用的是admin管理员身份可安装软件弹出你没有足够的权限为该计算机所有用户完成此安装.请以管理员的身份登...
- python面向对象基础语言进阶
- 阿里巴巴开源通用机器学习算法平台Alink
- Oracle的dbms_output包的put()和put_line()的区别只是有没有回车换行吗?
- 35岁以上还没结婚的男女们,过的如何?
- 将RGB转换为JPG格式到内存的代码
- 源代码安装mysql配置步骤
- 【好用的Mac分屏软件】Magnet for Mac 2.3
- 梅特勒托利多xk3124电子秤说明书_梅特勒托利多电子称设置方法
- 基于马尔可夫随机场的深度估计
- 威金敌敌畏--比特解决威金方案(转)
- 小白建站教程 腾讯云快速建站教程
- JAVA音程_大三度和小三度
- 促使新网站快速增加百度收录的几个不外传技巧
- 番茄钟怎么调_番茄钟的使用方法与使用体会
- 在互联网行业断断续续这四年间
- Windows句柄数限制
- 超级生产力的背后是强大的技术实力 央媒点赞小米“黑灯工厂”