Open deepaktwr opened 7 years ago
FrameHandler implementation might gets the messages regardless the context attachment to activity. As in ImageShading it is happening after bitmap manipulation and callback:
. . @Override public void handleTransformedResult(Bitmap bitmap, BeanImage beanImage) { if(beanImage == null){ Message message = frameHandler.obtainMessage(3, bitmap); frameHandler.sendMessageDelayed(message, 100); return; } BeanHandler beanHandler = new BeanHandler(); beanHandler.setBitmap(bitmap); beanHandler.setBeanImage(beanImage); Message message = frameHandler.obtainMessage(1, beanHandler); message.sendToTarget(); } . .
so that it would be a bad practice to keep a strong reference to the callback in FrameHandler:
. . ImageResult imageResult; FrameHandler(ImageResult imageResult){ this.imageResult = imageResult; } . .
Check WeakReference implementation in https://github.com/deepaktwr/BitFrames/commit/8a7a66aa8475d79603afeefa4097ef61c3ed1896
changing WeakReference to strong in FrameHandler might cause Activity leak #8
FrameHandler implementation might gets the messages regardless the context attachment to activity. As in ImageShading it is happening after bitmap manipulation and callback:
so that it would be a bad practice to keep a strong reference to the callback in FrameHandler:
Check WeakReference implementation in https://github.com/deepaktwr/BitFrames/commit/8a7a66aa8475d79603afeefa4097ef61c3ed1896
changing WeakReference to strong in FrameHandler might cause Activity leak #8