title: Instance ID not invalidated when clear application data
body: <p>I have implemented <code>GCM 3.0</code> with <code>Instance ID API</code> for sending push notification to application using <code>Application</code> and <code>GCM</code> server.</p>
  
  <p>Here is <strong><a href="https://developers.google.com/android/reference/com/google/android/gms/iid/InstanceID" rel="nofollow">Instance ID API for GCM</a></strong> documentation which i am referring.</p>
  
  <p>When User direcltly uninstall application without logout then <code>GCM</code> gives <strong><code>"Not Registered"</code></strong> error for devices with the app uninstalled.</p>
  
  <p>What i have to do is to remove useless <code>Device id tokens</code> from <code>Application server</code> for that i have tried with Uninstall of application then <code>Instance ID</code> is changed but when application data is cleared by User then <code>new Instance ID</code> will same as <code>previous Instance ID</code>.</p>
  
  <p>while <code>Android GCM</code> documentation says:</p>
  
  <blockquote>
    <p>Instance ID is stable but may become invalid, if:</p>
    
    <ul>
    <li>App deletes Instance ID</li>
    <li>Device is factory reset</li>
    <li>User uninstalls the app</li>
    <li>User clears app data</li>
    </ul>
  </blockquote>
  
  <p>is there any particular reason for this?</p>