android - Failed to initialize display event receiver -
i have made app periodically starts service retrieves information server.
i use alarmmanager schedule service.
works fine , app receives alarm every 30 min.
app works fine, after full night of inactivity -and start app, crashes error: 'failed initialize display event receiver'.
else works perfectly.
i searched problem long time , found others same problem, no solution, yet.
process: it.unipi.iet.portolan.traceroute, pid: 13092 java.lang.runtimeexception: failed initialize display event receiver. status=-2147483648 @ android.view.displayeventreceiver.nativeinit(native method) @ android.view.displayeventreceiver.<init>(displayeventreceiver.java:61) @ android.view.choreographer$framedisplayeventreceiver.<init>(choreographer.java:695) @ android.view.choreographer.<init>(choreographer.java:169) @ android.view.choreographer.<init>(choreographer.java:72) @ android.view.choreographer$1.initialvalue(choreographer.java:98) @ android.view.choreographer$1.initialvalue(choreographer.java:91) @ java.lang.threadlocal$values.getaftermiss(threadlocal.java:430) @ java.lang.threadlocal.get(threadlocal.java:65) @ android.view.choreographer.getinstance(choreographer.java:194) @ android.view.viewrootimpl.<init>(viewrootimpl.java:370) @ android.view.windowmanagerglobal.addview(windowmanagerglobal.java:248) @ android.view.windowmanagerimpl.addview(windowmanagerimpl.java:69) @ android.app.activitythread.handleresumeactivity(activitythread.java:2871) @ android.app.activitythread.handlelaunchactivity(activitythread.java:2271) @ android.app.activitythread.access$800(activitythread.java:145) @ android.app.activitythread$h.handlemessage(activitythread.java:1206) @ android.os.handler.dispatchmessage(handler.java:102) @ android.os.looper.loop(looper.java:136) @ android.app.activitythread.main(activitythread.java:5141) @ java.lang.reflect.method.invokenative(native method) @ java.lang.reflect.method.invoke(method.java:515) @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:795) @ com.android.internal.os.zygoteinit.main(zygoteinit.java:611) @ dalvik.system.nativestart.main(native method)
just info, can't understand why, message throws :
frameworks/base/core/jni/android_view_displayeventreceiver.cpp:4239: message.appendformat("failed initialize display event receiver. status=%d", status);
or maybe this
frameworks/base/libs/androidfw/displayeventdispatcher.cpp:1427: alogw("failed initialize display event receiver, status=%d", result);
the status -2147483648 = 0x800000000
it return displayeventreceiver:
/* initcheck returns state of displayeventreceiver after construction.*/ status_t initcheck() const;
and @ displayeventreceiver.cpp
status_t displayeventreceiver::initcheck() const { if (mdatachannel != null) return no_error; return no_init; }
look mdatachannel
null,
the mdatachannel initialized in constructor
displayeventreceiver::displayeventreceiver() { sp<isurfacecomposer> sf(composerservice::getcomposerservice()); if (sf != null) { meventconnection = sf->createdisplayeventconnection(); if (meventconnection != null) { mdatachannel = meventconnection->getdatachannel(); } } }
so sf surfacecomposer null or sf-> createdisplayeventconnection return null.
and in file ./system/core/include/utils/errors.h
... no_error =0 unknown_error = (-2147483647-1), // int32_min value no_memory = -enomem, invalid_operation = -enosys, bad_value = -einval, bad_type = (unknown_error + 1), no_init = -enodev, ...
seems status must no_init
...
Comments
Post a Comment