title: How to wipe out data on SD card permanently
body: <p>I am developing an android app which allows users wiping data on SD card permanently. What is important is that the data removed CANNOT be recovered by <a href="http://www.cardrecoverypro.com/?cate=terms&amp;model=SD-Card&amp;item=photos&amp;action=undelete&amp;situation=formatted&amp;appendix=files&amp;gclid=Cj0KEQjwq52iBRDEvrC12Jnz6coBEiQA2otXAmuVCF6gHTELeiaOgg5WgvlQPTE0GQPuY-UxQv7YaX8aApyN8P8HAQ" rel="nofollow noreferrer">CardRecover</a> and the like software.</p>
  
  <p>As far as I know, there are mainly two methods now.</p>
  
  <ol>
  <li>Using File.delete() method directly. See <a href="https://stackoverflow.com/questions/4749891/how-can-i-programmatically-format-all-data-on-an-sd-card">this thread</a>.</li>
  <li>Using IMountService and ServiceManager to format SD card. See <a href="https://stackoverflow.com/questions/7405173/format-sd-card-in-android">this thread</a>.</li>
  </ol>
  
  <p>However, <a href="http://www.cardrecoverypro.com/?cate=terms&amp;model=SD-Card&amp;item=photos&amp;action=undelete&amp;situation=formatted&amp;appendix=files&amp;gclid=Cj0KEQjwq52iBRDEvrC12Jnz6coBEiQA2otXAmuVCF6gHTELeiaOgg5WgvlQPTE0GQPuY-UxQv7YaX8aApyN8P8HAQ" rel="nofollow noreferrer">CardRecover</a> is able to recover data under these two situation.</p>
  
  <p>I know if the whole SD card is overwrite, the data cannot be recovered any more. I tried this method, but the performance is hardly acceptable. </p>
  
  <p>So how can I achieve this goal? </p>
  
  <p>I have two ideas as following now, but am not sure if they are proper.</p>
  
  <ul>
  <li>Encrypting all the files on SD card.</li>
  <li>Break all the files on SD card like what virus does.</li>
  </ul>