alibaba / alibaba/flutter_boost

com.idlefish.flutterboost.interfaces.IOperateSyncer.onDisappear() on a null object reference

Open
#954 3 comments 0 reactions 0 assignees View on GitHub
Android
Dominant language
Dart
Stars
7.2k
Forks
1.3k
PR merge metrics
No merged PRs in 30d

Description

Android内存不足被回收,启动app,会报如下错误。
麻烦大神们看下,被回收重新进入,FlutterActivityAndFragmentDelegate不会执行onCreateView,导致mSyncer没被赋值。能否将下面初始化再onAttach中处理
mSyncer = FlutterBoost.instance().containerManager().generateSyncer(this);

异常信息如下:
java.lang.NullPointerException: Attempt to invoke interface method void com.idlefish.flutterboost.interfaces.IOperateSyncer.onDisappear() on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2688)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2749)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThreadH.handleMessage(ActivityThread.java:1498)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:160)
at android.app.ActivityThread.main(ActivityThread.java:6200)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInitMethodAndArgsCaller.run(ZygoteInit.java:874)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:764)
Caused by: java.lang.NullPointerException: Attempt to invoke interface method void com.idlefish.flutterboost.interfaces.IOperateSyncer.onDisappear() on a null object reference
at com.idlefish.flutterboost.containers.FlutterActivityAndFragmentDelegate.onPause(FlutterActivityAndFragmentDelegate.java:201)
at com.idlefish.flutterboost.containers.FlutterFragment.onHiddenChanged(FlutterFragment.java:321)
at android.support.v4.app.j.e(FragmentManager.java:1763)
at android.support.v4.app.j.f(FragmentManager.java:1822)
at android.support.v4.app.c.g(BackStackRecord.java:797)
at android.support.v4.app.j.b(FragmentManager.java:2625)
at android.support.v4.app.j.a(FragmentManager.java:2411)
at android.support.v4.app.j.b(FragmentManager.java:2366)
at android.support.v4.app.j.h(FragmentManager.java:2273)
at android.support.v4.app.j.b(FragmentManager.java:814)

Contributor guide

No contributing guide indexed for this repository

Research direction

Start in FlutterActivityAndFragmentDelegate.onPause(), where the stack trace reports the null IOperateSyncer call, and compare its lifecycle with FlutterFragment.onHiddenChanged(). Review the reported initialization in onAttach and the existing onCreateView path. Done means reproducing an Android low-memory relaunch without the NullPointerException.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, flutter, java
Domain
mobile
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.