나는이 내 응용 프로그램이 실행되는 동안 인터넷에 연결되어 있는지 여부를 확인하는 클래스 :확인 인터넷 연결
public class NetworkChangeReciever extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
ConnectivityManager cm = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
boolean isConnected = activeNetwork != null && activeNetwork.isConnectedOrConnecting();
if (isConnected){
Toast.makeText(context, "CONNECTED!", Toast.LENGTH_LONG).show();
}else{
Toast.makeText(context, "NOT CONNECTED", Toast.LENGTH_LONG).show();
}
}}
내가 내 매니페스트 파일 내에서이 수신기를 추가 응용 프로그램 괄호 사이에,
<receiver
android:name=".DataHelpers.NetworkChangeReciever"//DataHelpers is the package name
android:label="NetworkChangeReceiver">
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
<action android:name="android.net.wifi.WIFI_STATE_CHANGED" />
</intent-filter>
</receiver>
이제 조금 혼란스러워합니다. 인터넷에 의존하는 응용 프로그램을 실행하고 연결을 종료 할 때 "연결됨!"이라는 토스트 메시지가 표시되지 않아야합니까? 수신기가 연결이 없다는 것을 인식해서는 안되며 NetworkChangerReciever 클래스의 onReceive() 메서드를 실행하지 않아야합니까? 내가 여기서 무엇을 놓치고 있니? 고맙습니다.
이 유 활동의 onResume에 수신기를 등록 했습니까? – rafsanahmad007
아니, 어떻게해야합니까? 답을 쓸 수 있니? 나는 매니 페스트 파일에 등록하는 것을 의미하는 등록이라고 생각 했습니까? –