- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
注意:带有android:excludeFromRecents="true"
的 Activity 标志
@Override
protected void onDestroy() {
sendBroadcast(new Intent("com.android.servicerestart"));
if(broadcastReceiver != null) {
try {
unregisterReceiver(broadcastReceiver);
}
catch (IllegalArgumentException E)
{
}
}
super.onDestroy();
Log.e("Activity","In OnDestroy");
}
@Override
protected void onPause() {
if(broadcastReceiver != null) {
try {
unregisterReceiver(broadcastReceiver);
}
catch (IllegalArgumentException E)
{
E.printStackTrace();
}
}
super.onPause();
Log.e("Activity","In OnPause");
}
@Override
protected void onResume() {
registerReceiver();
super.onResume();
Log.e("Activity","In onResume");
}
@Override
protected void onStart() {
super.onStart();
try {
registerReceiver();
}
catch (Exception E)
{
}
}
registerReceiver();
private void registerReceiver() {
broadcastReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
}
};
try {
registerReceiver(broadcastReceiver, new IntentFilter("*******.receive.service.download"));
}
catch (Exception E)
{
}
}
日志
E/ActivityThread: Activity **********.activity.MainActivity has leaked IntentReceiver **********.activity.MainActivity$3@3318724 that was originally registered here. Are you missing a call to unregisterReceiver()?
android.app.IntentReceiverLeaked: Activity **********.activity.MainActivity has leaked IntentReceiver **********.activity.MainActivity$3@3318724 that was originally registered here. Are you missing a call to unregisterReceiver()?
at android.app.LoadedApk$ReceiverDispatcher.<init>(LoadedApk.java:1164)
at android.app.LoadedApk.getReceiverDispatcher(LoadedApk.java:951)
at android.app.ContextImpl.registerReceiverInternal(ContextImpl.java:1308)
at android.app.ContextImpl.registerReceiver(ContextImpl.java:1288)
at android.app.ContextImpl.registerReceiver(ContextImpl.java:1282)
at android.content.ContextWrapper.registerReceiver(ContextWrapper.java:586)
at **********.activity.MainActivity.registerReceiver(MainActivity.java:203)
at **********.activity.MainActivity.onStart(MainActivity.java:156)
at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1255)
at android.app.Activity.performStart(Activity.java:6853)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2712)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2810)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1530)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6256)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:793)
最佳答案
这是一个生命周期问题
start
和 resume
都注册了一个接收器 - 但没有检查接收器是否已经存在(因此您注册了两个单独的接收器)
这意味着在 pause
和 destroy
方法上只能看到第二个,而第一个被泄漏。
最好的解决方法是删除启动/销毁 block 。否则,您可以将新的 BroadcastReceiver block 包装在 if (broadcastReceiver == null)
关于java - 本地广播接收器异常 : android. app.IntentReceiverLeaked?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52697490/
我正在使用 BroadcastReceiver 来监控电池电量。我提到了this我的代码是 public class PowerConnectionReceiver extends Broadcast
我在使用 android 6 时遇到 WifiDirect 连接问题。直接连接 WIFI 并将后退按钮推到我的应用程序后。该应用程序泄漏了 intentreceiver public class Wi
我正在尝试下载一个文件,下载后想在数据库中更新它,但我的 Intent 是服务广播接收器造成了这个问题: android.app.IntentReceiverLeaked: Service com.d
我想从蓝牙服务器接收一个 String,它是 pc 我有一个 java 代码,但是当我运行我的 Android 客户端 Activity 时,它会显示这个异常 Activity com.waseem.
注意:带有android:excludeFromRecents="true"的 Activity 标志 @Override protected void onDestroy() {
friend 的, 我在 map View 中遇到问题,最初我有 map View ,标题中有搜索选项,用于搜索我正在使用的内容这是我的搜索代码... Intent intent = getInten
我是一名优秀的程序员,十分优秀!