Android M поддерживает новый ACTION_CAPTIVE_PORTAL_SIGN_IN. Есть ли какой-нибудь пример того, как захватить это действие. Я пробовал обычным способом зарегистрироваться на действие как через активность, так и через широковещательный приемник. Однако, когда я подключен к сети Wi-Fi с авторизованным порталом, я не получаю никаких действий. Кто-нибудь, пожалуйста, помогите
Использование ACTION_CAPTIVE_PORTAL_SIGN_IN
Ответы (1)
Его можно использовать, чтобы позволить вашему приложению выполнять вход в 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
, используя getIntent()
и getParcelableExtra()
. Используйте дополнительный элемент ConnectivityManager.EXTRA_NETWORK
(который имеет тип Network
) для связи с порталом (т.е. передать токены входа ) и дополнительный ConnectivityManager.EXTRA_CAPTIVE_PORTAL
(который имеет тип CaptivePortal
), чтобы сообщить системе о результатах входа.
person
cuihtlauac
schedule
19.11.2015
У меня есть эта настройка в манифесте, но всегда запускается страница входа по умолчанию, нет выбора действий, я также убедился, что нет приложения по умолчанию, которое обрабатывает действие
- person TootsieRockNRoll; 05.07.2018
Какую версию Android вы используете? Какое устройство?
- person cuihtlauac; 05.07.2018
это галактика J5 с 7.1.1 (25)
- person TootsieRockNRoll; 05.07.2018