我已在Broadcast Receiver
项目中实施了library
来检查Boot Completed
事件,但它无效。
广播接收器类:
public class Reciever extends BroadcastReceiver
{
public void onReceive(Context context, Intent intent)
{
if(intent.getAction().equals("android.intent.action.BOOT_COMPLETED"))
{
Toast.makeText(context, "Device Boot Completed", Toast.LENGTH_LONG).show();
}
}
}
AndroidManifest.xml:
<receiver
android:name=".Reciever"
android:enabled="true" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
我在另一个应用程序(而不是库项目)中实现了相同的Receiver,它工作正常。
答案 0 :(得分:1)
覆盖以下方法
@覆盖 public void onReceive(Context context,Intent intent)
答案 1 :(得分:1)
无法在库项目的清单中定义BroadcastReceiver。托管项目总是需要声明组件。
android library project and Activities
编辑: 我觉得这应该适用于最新的Android studio / gradle项目。
答案 2 :(得分:0)
你可能会跳过
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
在清单文件
中答案 3 :(得分:-1)
您应该使用库jar
将接收标记和重新启动权限添加到客户端应用程序清单文件中喜欢这个;
<receiver android:name="com.example.library.ReceiverClass" <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED" /> </intent-filter> </receiver>