我有一个非常简单的问题让我疯了.我正在创建一个broadcastReceiver,在清单上声明它但它不会运行.我试图让它在设备启动时触发.这是代码:
package com.vullnetdyla.bcreceiver;import androID.content.broadcastReceiver;import androID.content.Context;import androID.content.Intent;import androID.util.Log;public class Receiver extends broadcastReceiver { @OverrIDe public voID onReceive(Context context, Intent intent) { Log.d("ftw", "It worked"); }}
和清单文件:
<manifest xmlns:androID="http://schemas.androID.com/apk/res/androID"package="com.vullnetdyla.bcreceiver"androID:versionCode="1"androID:versionname="1.0"><uses-sdk androID:minSdkVersion="8" androID:targetSdkVersion="15" /><uses-permission androID:name="androID.permission.RECEIVE_BOOT_COMPLETED" /><application androID:label="@string/app_name" androID:icon="@drawable/ic_launcher" androID:theme="@style/Apptheme"> <receiver androID:name="com.vullnetdyla.bcreceiver.Receiver"> <intent-filter> <action androID:name="androID.intent.action.BOOT_COMPLETED" /> </intent-filter> </receiver></application>
解决方法:
你有一些用户可以启动的活动吗?
如果不是这就是你的问题!因为androID 3.1安装后的应用程序(包更具体)处于停止状态并且没有收到任何广播.用户必须手动启动它才能使其正常工作.
请参阅AndroID 3.1的release notes中的“启动已停止的应用程序的控件”部分.
另见flag FLAG_INCLUDE_STOPPED_PACKAGES,FLAG_EXCLUDE_STOPPED_PACKAGES.
以上是内存溢出为你收集整理的Android BroadcastReceiver将无法正常工作全部内容,希望文章能够帮你解决Android BroadcastReceiver将无法正常工作所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)