简体   繁体   English

广播接收器问题,注册广播接收器

[英]Broadcast Receiver issue, register a Broadcast Receiver

I have a problem with a Broadcast Receiver 我的广播接收器有问题

I want to execute a Broadcast Receiver after a wifi scan, if i register de broadcast receiver in this wait, it works, but only when the app is running: 我想在wifi扫描后执行广播接收器,如果我在此等待中注册广播接收器,则它可以工作,但仅当应用程序正在运行时:

registerReceiver(receiver, new IntentFilter(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION));

i want to register de Broadcast Receiver in the Android Manifest, like this: 我想在Android Manifest中注册de Broadcast Receiver,如下所示:

<receiver android:name=".WiFiScanReceiver"  android:enabled="true">
        <intent-filter>
            <action android:name="android.net.wifi.WifiManager.SCAN_RESULTS_AVAILABLE_ACTION"/>
        </intent-filter> 
    </receiver>

but this way, it isn't works, please help me! 但是这种方式是行不通的,请帮帮我!

The string representation of SCAN_RESULTS_AVAILABLE is android.net.wifi.SCAN_RESULTS , as is indicated in the documentation . 文档所示, SCAN_RESULTS_AVAILABLE的字符串表示SCAN_RESULTS_AVAILABLEandroid.net.wifi.SCAN_RESULTS That is not what you have in your <action> element. 那不是您的<action>元素中的内容。

<receiver android:name="com.madhu.wifitest.WiFiScanReceiver" android:enabled="true">
<intent-filter>
    <action android:name="android.net.wifi.SCAN_RESULTS"></action>
</intent-filter>


 /*add these permissions in the manifest*/
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM