Настройки оператора сети Android Намерение не работает правильно

Я пытаюсь открыть представление "Настройки сетевого оператора" с помощью следующего кода:

startActivity(new Intent(android.provider.Settings.ACTION_NETWORK_OPERATOR_SETTINGS));

Он работает корректно на всех устройствах, которые я мог протестировать, но на одном из них (Alcatel One Touch Pixi, с Android 5.1) открывается окно "Настройки сетевого оператора" и автоматически закрывается после этого. Я пытался увидеть, если resolActivity с packageManager этого намерения возвращает ноль, но это не так, он открывает активность настроек оператора сети и затем (по какой-то причине) автоматически завершается.

Кто-нибудь может помочь мне решить эту проблему, которая происходит только с некоторыми мобильными телефонами?

3 ответа

Решение

Есть альтернативный способ вызвать меню настроек сети:

Intent intent = new Intent();
intent.setComponent(new ComponentName("com.android.phone", "com.android.phone.MobileNetworkSettings"));
startActivity(intent);

Этот метод работает с устройствами Samsung, но не уверен относительно устройств, которые вы упомянули (поскольку я указываю имя пакета и имя класса активности).

Я думаю, что вы можете попробовать, и если сработает, вы можете добавить соответствующие условия для использования этого кода и т. Д.

Вы не можете решить проблему. В другом приложении есть ошибка. Только его разработчики могут исправить ошибку.

Беспроводные Настройки

startActivity(new Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS)); 

Настройки оператора сети

startActivity(new Intent(Settings.ACTION_NETWORK_OPERATOR_SETTINGS));
Другие вопросы по тегам