qq_37761523 2017-05-12 14:39 采纳率: 57.1%
浏览 2358
已采纳

android应用进程在后台被清理掉后无法接收broadcast

想尝试写一个应用,在开机、解锁等操作后通过广播接收器开启一个服务,可当应用正常开启时广播可正常接收,但进程被后台清理后接收不到广播,可是静态注册的广播不是在进程被杀死后也可以接收的吗,还是与启动的服务也有关系吗?求解

 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
        <receiver
            android:name=".BootReceiver"
            android:enabled="true"
            android:exported="true">
            <intent-filter android:priority="1000">
                <action android:name="android.intent.action.BOOT_COMPLETED" />
                <action android:name="android.intent.action.MEDIA_MOUNTED" />
                <action android:name="android.intent.action.USER_PRESENT" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </receiver>
 public class BootReceiver extends BroadcastReceiver {
    Intent tuiintent=new Intent();

    @Override
    public void onReceive(Context context, Intent intent) {
        Log.i("onreceive","onreceive");
        tuiintent.setAction("android.intent.action.USER_PRESENT");
        tuiintent.setPackage("com.example.notitest");
        context.startService(tuiintent);
    }
}

  • 写回答

1条回答 默认 最新

  • woqi0025 2017-05-14 15:07
    关注

    android3.1以上的版本,google给iintent添加一个标记具体是啥不记得了,这样当你的应用程序别kill掉后,广播是不会在发送到你的这个接收者上了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 软件定义网络mininet和onos控制器问题
  • ¥15 微信小程序 用oss下载 aliyun-oss-sdk-6.18.0.min client报错
  • ¥15 ArcGIS批量裁剪
  • ¥15 labview程序设计
  • ¥15 为什么在配置Linux系统的时候执行脚本总是出现E: Failed to fetch http:L/cn.archive.ubuntu.com
  • ¥15 Cloudreve保存用户组存储空间大小时报错
  • ¥15 伪标签为什么不能作为弱监督语义分割的结果?
  • ¥15 编一个判断一个区间范围内的数字的个位数的立方和是否等于其本身的程序在输入第1组数据后卡住了(语言-c语言)
  • ¥15 Mac版Fiddler Everywhere4.0.1提示强制更新
  • ¥15 android 集成sentry上报时报错。