应用程序未运行时广播接收器不工作 运行
Broadcast Receiver not working when app is not running
当应用程序不在后台 运行 时,我的广播接收器无法工作。
尝试了不同的意图过滤器
<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
我会尝试在接收方的清单定义中放置一个 android:process=":remote",以便它 运行 执行单独的任务。
还没有看到你的整个 AndroidManifest
但我的第一个怀疑是你没有适当的许可。
为了收听网络变化,您必须声明您在清单中使用此权限,如下所示
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
下一个嫌疑人是您提供的姓名,也许可以尝试提供收件人姓名的完整路径
终于可以在其他 android 手机上使用了。
因为小米手机默认不允许广播接收器和服务
当应用程序不在后台 运行 时,我的广播接收器无法工作。
尝试了不同的意图过滤器
<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
我会尝试在接收方的清单定义中放置一个 android:process=":remote",以便它 运行 执行单独的任务。
还没有看到你的整个 AndroidManifest
但我的第一个怀疑是你没有适当的许可。
为了收听网络变化,您必须声明您在清单中使用此权限,如下所示
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
下一个嫌疑人是您提供的姓名,也许可以尝试提供收件人姓名的完整路径
终于可以在其他 android 手机上使用了。 因为小米手机默认不允许广播接收器和服务