android4.0上没有接收到android.intent.action.BOOT_COMPLETED

2在路上 2012-03-21 08:16:50
代码如下:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.archermind.TestLog"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk android:minSdkVersion="10" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >

<receiver android:name=".BootComplete">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />

</intent-filter>
</receiver>
</application>

</manifest>



package com.archermind.TestLog;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;

public class BootComplete extends BroadcastReceiver{

@Override
public void onReceive(Context context, Intent intent) {

Log.v("11111111111111111","1111111111111111");

}

}


这个程序我在2.3上跑过,是可以接收到这个广播的,不知道为什么4.0不可以,有谁遇到过并且解决的吗
...全文
5063 28 打赏 收藏 转发到动态 举报
写回复
用AI写文章
28 条回复
切换为时间正序
请发表友善的回复…
发表回复
woyaowenzi 2014-03-12
  • 打赏
  • 举报
回复
引用 24 楼 allen526 的回复:
Android 3.1开始, 由于安全性的考虑. 程序在安装后,用户没有通过自己的操作来启动程序的话,那么这个程序将收不到android.intent.action.BOOT_COMPLETED这个Intent; 用户通过自己的操作启动过一次程序后, receiver将被激活, 从而收的到android.intent.action.BOOT_COMPLETED Intent.
对的,防止恶意软件自启。 http://commonsware.com/blog/2011/07/13/boot-completed-regression-confirmed.html
gemmo 2014-02-21
  • 打赏
  • 举报
回复
引用 24 楼 allen526 的回复:
Android 3.1开始, 由于安全性的考虑. 程序在安装后,用户没有通过自己的操作来启动程序的话,那么这个程序将收不到android.intent.action.BOOT_COMPLETED这个Intent; 用户通过自己的操作启动过一次程序后, receiver将被激活, 从而收的到android.intent.action.BOOT_COMPLETED Intent.
正解
wolong01 2013-04-15
  • 打赏
  • 举报
回复
4.0平台为什么很多 BroadcastReceiver 都接收不到?哪个兄弟给回答一下?
乱在长安 2013-04-11
  • 打赏
  • 举报
回复
我遇到了同样的问题 无法接受到。
allen526 2012-09-13
  • 打赏
  • 举报
回复
Android 3.1开始, 由于安全性的考虑.
程序在安装后,用户没有通过自己的操作来启动程序的话,那么这个程序将收不到android.intent.action.BOOT_COMPLETED这个Intent;
用户通过自己的操作启动过一次程序后, receiver将被激活, 从而收的到android.intent.action.BOOT_COMPLETED Intent.
Wu_TiHou 2012-04-18
  • 打赏
  • 举报
回复
今天试过4.0.3模拟器和真机也都不行,根本接受不到广播。2.2的试过都可以,求高手解决
CyberLogix 2012-04-02
  • 打赏
  • 举报
回复
android.intent.action.BOOT_COMPLETED
可能对应用的类型有限制,SD上的不成形吧
2在路上 2012-04-01
  • 打赏
  • 举报
回复
可能4.0的机制改掉了,最近没时间搞这个问题了
xinqi53 2012-03-30
  • 打赏
  • 举报
回复
我也有此问题,不可能吧。。4.0也太神奇了吧
kity 2012-03-23
  • 打赏
  • 举报
回复
什么情况,等高人。。
2在路上 2012-03-23
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 sdsunqian 的回复:]

确认一下你的应用是否安装到internal only,安装到sd上是收不到启动完成广播的。
android:installLocation="internalOnly"
[/Quote]

这样做还是不行
fire_fire_fire 2012-03-22
  • 打赏
  • 举报
回复
帮顶一个,望楼主早日解决
metapipe 2012-03-22
  • 打赏
  • 举报
回复
确认一下你的应用是否安装到internal only,安装到sd上是收不到启动完成广播的。
android:installLocation="internalOnly"
king8902 2012-03-22
  • 打赏
  • 举报
回复
不会吧,我在4.0上测试了可以啊,能够接收到广播啊
2在路上 2012-03-22
  • 打赏
  • 举报
回复
其实我就是想开机启动一个抓android运行的log程序
2在路上 2012-03-22
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 imilyyan 的回复:]
4.0上可以实现
[/Quote]
楼上指的是4.0.1版本可以实现是吗?晚上回去试试
imilyyan 2012-03-22
  • 打赏
  • 举报
回复
4.0上可以实现
2在路上 2012-03-21
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 yiyaaixuexi 的回复:]
代码是完全没有问题的。
的确有类似的现象发生,如果有多个应用都同时接收android.intent.action.BOOT_COMPLETED广播,那么有可能接收不到。
[/Quote]


4.0上有没有别的应用接收我不太清楚。

2在路上 2012-03-21
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 ultrapro 的回复:]
用的什么设备?
[/Quote]
用的模拟器,真机上还没试过
2在路上 2012-03-21
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 ultrapro 的回复:]
你的应用是放到SD卡上了么?
[/Quote]

不是放在sdcard上的。
加载更多回复(5)

80,359

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧