title: Override maxSdkVersion used by library
body: <p>Here's the scenario. My app (A) is using a library (B). </p>
  
  <p>My app (A) is using permission READ_PHONE_STATE and it's declared in manifest.xml as </p>
  
  <pre><code>&lt;uses-permission android:name="android.permission.READ_PHONE_STATE" /&gt;
  </code></pre>
  
  <p>While library (B) is also using the same permission READ_PHONE_STATE, but with maxSdkVersion set to 22.</p>
  
  <pre><code>&lt;uses-permission
      android:name="android.permission.READ_PHONE_STATE"
      android:maxSdkVersion="22"/&gt;
  </code></pre>
  
  <p>So now the problem is when app is built and in the final _merged_manifest_ I'm having <em>maxSdkVersion="22"</em> set, and because of this my current device which is running nougat can't request for this particular permission.</p>
  
  <p>Currently I found a solution to override this value in my app (A) manifest.xml</p>
  
  <pre><code>&lt;uses-permission
      tools:replace="android:maxSdkVersion"
      android:name="android.permission.READ_PHONE_STATE"
      android:maxSdkVersion="28"/&gt;
  </code></pre>
  
  <p>But this requires me to update <em>maxSdkVersion</em> every time I update the sdk version in my app (A).</p>
  
  <p>So my question is</p>
  
  <ol>
  <li>Is there a way to ignore maxSdkVersion set by library (B) using some namespace in my manifest.xml like tools:ignore</li>
  <li>Set maxSdkVersion to latest sdkVersion in build.gradle automatically without manually changing it</li>
  </ol>