title: Android and Kotlin coroutines: inappropriate blocking method call
body: <p>I have the following class:</p>
  
  <pre><code>class Repository(
      private val assetManager: AssetManager,
      private val ioDispatcher: CoroutineDispatcher = Dispatchers.IO
  ) {
      suspend fun fetchHeritagesList(): HeritageResponse = withContext(ioDispatcher) {
          try {
              // TODO Blocking method call?
              val bufferReader = assetManager.open("heritages.json").bufferedReader()
  ...
  </code></pre>
  
  <p>and I'm wondering why do I get a warning in the <code>open("heritages.json")</code> saying <code>Innapropriate blocking method call</code>? isn't the <code>withContext(ioDispatcher)</code> fixing that?</p>
  
  <p>Thanks for the explanation!</p>