应用程序未运行时,广播接收器无法正常工作

时间:2016-08-01 17:35:37

标签: java android broadcastreceiver broadcast

当应用程序未在后台运行时,我的广播接收器不起作用。

尝试使用不同的意图过滤器

    

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:supportsRtl="true"
    android:theme="@style/AppTheme.NoActionBar" >

    <receiver android:name=".network.NetworkChangeReceiver"
        android:enabled="true">
        <intent-filter>
            <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
        </intent-filter>
    </receiver>

    <activity
        android:name=".view.activity.MainActivity"
        android:label="@string/app_name">
    </activity>
    <activity android:name=".view.activity.BarLoginActivity"
        android:label="@string/app_name">
        <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

当应用程序在后台运行时,我的接收器工作正常,但是一旦删除我最近的应用程序,它就无法正常工作。 在API 19上运行

3 个答案:

答案 0 :(得分:3)

最后它适用于其他Android手机。 因为小米手机默认不允许广播接收器和服务

答案 1 :(得分:1)

我会尝试放一个android:process =&#34;:remote&#34;在接收器的Manifest定义中,它将在一个单独的任务上运行。

答案 2 :(得分:1)

Haven没有看到你的整个AndroidManifest,但我的第一个嫌疑人是你没有得到适当的许可。
要收听网络更改,您必须声明您在清单中使用此权限,如此

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

下一个嫌疑人是你给的名字,也许试着给出收件人姓名的完整路径

相关问题