簡體   English   中英

當應用未運行時,廣播接收器不起作用

[英]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手機上使用。 因為默認情況下小米手機不允許廣播接收器和服務

我會嘗試將android:process =“:remote”放在接收方的清單定義中,以便它將在單獨的任務上運行。

尚未看到整個AndroidManifest但我首先懷疑的是您缺少適當的權限。
為了收聽網絡更改,您必須在清單中聲明您正在使用此權限,如下所示

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

下一個可疑者是您提供的名稱,也許嘗試提供收件人名稱的完整路徑

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM