title: In which criteria separate code into packages in an Android Application
body: <p>I am developing an Android application using eclipse which has totally 29 classes in a package called com.companyname.appname.This 29 classes includes Activities,List Fragments,Loaders,Service, DbHelper,Jsonparser,Adapter and NetworkConnection classes.</p>
  
  <p>I plan to separate packages like below,</p>
  
  <p><em><strong>Method 1:</em></strong></p>
  
  <ul>
  <li>com.companyname.appname.activities (includes all <strong>activity</strong> class of application)</li>
  <li>com.companyname.appname.services (includes all <strong>service</strong> class of application)</li>
  <li>com.companyname.appname.loaders (includes all <strong>loader</strong> class of application)</li>
  <li>com.companyname.appname.fragments (includes all <strong>fragment</strong> class of application)</li>
  <li>com.companyname.appname.database (includes all <strong>database</strong> helper class of application)</li>
  <li>com.companyname.appname.utilities (includes other <strong>utility classes</strong>(Jsonparser,Netwrok connection detection,SimpleCursorAdapter) of application)</li>
  </ul>
  
  <p><em><strong>Method 2:</em></strong></p>
  
  <ul>
  <li>Separate each package for each Activity(it includes the associated fragments,loaders,utilities,services,etc)</li>
  </ul>
  
  <p>Which is the efficient method? Or I need to separate packages in different method efficiently?
  What are all the best practices of package separation in android code design?</p>