Android M 支持新的ACTION_CAPTIVE_PORTAL_SIGN_IN。是否有任何关于如何捕获此操作的示例。我尝试了通过活动和广播接收器注册动作的正常方式。但是,当我连接到强制门户 wifi 网络时,我没有收到操作。有人请帮忙
问问题
3190 次
1 回答
8
它可用于允许您的应用执行强制门户 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
推出
ConnectionManager.ACTION_CAPTIVE_PORTAL_SIGN_IN
您可以访问usinggetIntent()
和中提到的附加功能getParcelableExtra()
。使用ConnectivityManager.EXTRA_NETWORK
extra(具有 type Network
)与门户通信(即传递登录令牌),使用ConnectivityManager.EXTRA_CAPTIVE_PORTAL
extra(具有 type CaptivePortal
)与系统就登录结果进行通信。
于 2015-11-19T16:02:08.077 回答