Я разрабатываю приложение с Parse на Android, и мне нужно проверить подключение к Интернету на устройстве. Поэтому я сделал это для входа в систему:Проверьте данные мобильной сети, доступные в устройстве Android.
connectivityManager = (ConnectivityManager)getActivity().getSystemService(Context.CONNECTIVITY_SERVICE);
networkInfo = connectivityManager.getActiveNetworkInfo();
btnLogin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (networkInfo != null && networkInfo.isConnected()) {
if (validate()) {
ParseUser.logInInBackground(user, password, new LogInCallback() {
@Override
public void done(ParseUser user, ParseException e) {
if (user != null) {
//code to send to MainActivity
} else {
//code if the values are wrong
}
}
});
}
}else {
Toast.makeText(getActivity(), "Check your network connection", Toast.LENGTH_LONG).show();
}
}
});
И вот пришел мой вопрос. Здесь, в моей стране, наш оператор сотовой связи дает нам бесплатную версию whatsapp и facebook, но если вы пытаетесь просмотреть или использовать другое приложение с помощью мобильных данных, это запрещено. И когда я пытаюсь войти в мое приложение без каких-либо мобильных данных, я не знаю, как приложение обнаружило некоторые мобильные данные и попыталось войти в систему. Я читал здесь в SO, лучший способ использовать сетевое соединение, но я думаю, что это не решение. Как проверить мегабайты или данные на устройстве? или я должен сделать что-то другое, чтобы проверить соединение? Заранее спасибо
Что означает эти параметры в getNetworkInfo? @Nigam Patro – Coeus
@Coeus, что номер отличается для сетевых типов. 0 предназначен для мобильной сети, 1 для WIFI. –
ОК! Я попробую с этим (: – Coeus