Android M支持新的
ACTION_CAPTIVE_PORTAL_SIGN_IN.是否有关于如何捕获此操作的可用示例.我尝试了通过活动和广播接收器注册动作的正常方式.但是当我连接到强制门户网络wifi网络时,我没有收到动作.有人请帮忙
解决方法
它可用于允许您的应用执行强制网络门户Wi-Fi登录.假设您的清单中有类似的内容:
<activity android:name=".SignInActivity"> <intent-filter> <action android:name="android.net.conn.CAPTIVE_PORTAL"/> <category android:name="android.intent.category.DEFAULT"/> </intent-filter> </activity>
以下是可能发生的事情:
>设备连接到强制Wi-Fi门户
>系统显示强制门户通知
>用户触摸通知
>系统显示隐式目标应用选择器
>用户选择SignInActivity
> SignInActivity已启动
您可以使用getIntent()
和getParcelableExtra()
访问ConnectionManager.ACTION_CAPTIVE_PORTAL_SIGN_IN
中提到的额外内容.使用ConnectivityManager.EXTRA_NETWORK
extra(其类型为Network
)与门户网站(即通过登录令牌)和ConnectivityManager.EXTRA_CAPTIVE_PORTAL
extra(具有类型CaptivePortal
)进行通信关于签到结果的系统.