thepracticaldev.com thepracticaldev.com

Building a better Web View for mobile apps

Web Views are among the most widely used components in mobile apps for good reason: most apps need to incorporate some internal or external web experience at some point. Because of this, Apple and Google provide basic Web View controls out of the box: iOS with WKWebView, and Android with WebView (there are other options on Android but this is the primary one most apps use). Unfortunately, using these Web Views is anything but simple,...

thepracticaldev.com thepracticaldev.com

Leak investigation: Rx disposal race in SQLDelight

Header image: The In-Between by Romain Guy. In this blog we'll look into how an easy mistake when using Observable.create() can lead to subtle leaks. I recently investigated the following leak, which I couldn't reproduce systematically: ┬─── ... ├─ com.example.hockey.PlayerQueries$selectAllQuery instance │ ↓ Query.listeners │ ~~~~~~~~~ ├─ java.util.concurrent.CopyOnWriteArrayList instance │ ...