Android BroadcastReceiver将无法正常工作

Android BroadcastReceiver将无法正常工作,第1张

概述我有一个非常简单的问题让我疯了.我正在创建一个BroadcastReceiver,在清单上声明它但它不会运行.我试图让它在设备启动时触发.这是代码:packagecom.vullnetdyla.bcreceiver;importandroid.content.BroadcastReceiver;importandroid.content.Context;importandroid.content

我有一个非常简单的问题让我疯了.我正在创建一个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将无法正常工作所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1099803.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存