Tôi đã đăng ký ConnectivityManager.CONNECTIVITY_ACTION
BroadcastReceiver, để nhận các sự kiện trạng thái mạng, nhưng chức năng onReceive
của tôi không được gọi khi tôi bật hoặc tắt kết nối wifi của mình.Không thể nhận các sự kiện liên quan đến mạng
Như đã đề cập trong tài liệu, đây là thiết bị thu phát sóng dính được phát khi chúng tôi đăng ký.
Nhưng tôi không nhận được bất kỳ sự kiện nào trong chức năng onReceive
khi đăng ký nhận này, nguyên nhân có thể là gì?
Trong tệp kê khai của tôi, tôi có tất cả các quyền truy cập kết nối Internet/Mạng/Wifi và trạng thái của chúng.
Tôi đăng ký với mục đích này sử dụng đoạn mã sau:
registerReceiver(mNetworkStateReceiver, new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION));
Trong Logcat của tôi, tôi nhận được sau Thông báo lỗi đăng ký cho máy thu phát sóng này:
01-01 00:05:29.804: ERROR/WifiHW(1305): Unable to open connection to supplicant on "/data/system/wpa_supplicant/wlan0": Connection refused
gì có thể là nguyên nhân? Có cách nào để tìm hiểu xem BroadcastReceiver có được đăng ký đúng hay không?
Cảm ơn.
Bạn có thấy vấn đề tương tự nếu bạn đăng ký người nhận thông qua tệp kê khai của mình không? Bạn có kết nối wifi có thể sử dụng để truyền dữ liệu không? Có thể đăng mã bạn đang sử dụng trong 'onReceive()' cho 'mNetworkStateReceiver' không? –
Tôi chưa bao giờ cố gắng đăng ký nó thông qua tệp kê khai, tôi sẽ thử trước! – User7723337
bạn có thể xem xét để thưởng bounty.otherwise nó sẽ đi vô ích – Sameer