title: Implications of setting a lower targetSdkVersion for the app
body: <p>I have read the Android documentation <a href="https://developer.android.com/guide/topics/manifest/uses-sdk-element" rel="nofollow noreferrer">here</a> and this similar question <a href="https://stackoverflow.com/questions/26694108/what-is-the-difference-between-compilesdkversion-and-targetsdkversion">here</a>, but have a question on the real life implications of this version.</p>
  
  <p>My app had a <code>targetSdkVersion</code> of 25 while in development, and I was trying it out with a <strong>SDK level 27 (Android 8.1)</strong> phone with no issues.</p>
  
  <p>My question is specifically about broadcast receivers. Prior SDK 26, you can register for broadcasts in manifest file and you will receive all the broadcasts you registered for. But 26 changed that to severely <a href="https://developer.android.com/guide/components/broadcasts#receiving-broadcasts" rel="nofollow noreferrer">limit</a> this mechanism that you cannot receive any implicit broadcasts, like Wifi connection changes. And instead they recommend using JobScheduler, with a minimum period of 15 minutes. This would absolutely not work for my app.</p>
  
  <p>Now what I want to understand is, what are the implications of releasing my app with a target <strong>SDK version of 25</strong>, given that I do not use any features of latest SDK (27)?</p>
  
  <p>Would there be any restrictions for a phone running <strong>SDK > 25</strong> to use my app? </p>
  
  <p>Thank you.</p>