On some Androids, we cannot measure a button that is not visible on the screen. `undefineds` are returned. So we have to wait of the login screen to be dismissed, before we call `measure`.
I wanted to pass the `measure` function itseft through conxtext, but that results in `Cannot read property '_nativeTag' of undefined` error. Not sure what that means, but I don't think passing the ref is much worse.
`measure` asynchronously measures the component and then calls the callback. This is by I need states and an effect, instead of a memo.
`buttonMeasured` flag ensures the tip doesn't jump after the `measure` is done. `measure` returns quickly and I don't think this slight delay is a problem.