title: Is it possible to remotely host a resource used in a Android app in such a way that it can only be used by my app?
body: <p>Basically what I am trying to achieve is hosting a CSV file which will be retrieved and used by my application as a source of data to populate some tables. The CSV will be updated with the latest data, and I envision that every so often the app will get the latest version to ensure the data within it is up to date.</p>
  
  <p>My question is around whether it is possible to ensure that this remote CSV resource is only used by my application?</p>
  
  <p>Presumably if I just did a plan URL get on the location of the CSV this could be sniffed and the path used by others. I don't see how I could restrict access to it since users could be using the app from almost any connection.</p>
  
  <p>If I use some sort of encryption on the file, would the decryption key(s) be possibly exposed if someone decompiled the java apk file?</p>
  
  <p>Are there any other approaches to ensure my csv data source is only used by my app?</p>
  
  <p>Thanks</p>
  
  <p>(I am using a CSV because the data isn't very complex, and doesn't warrant a database, I've read a little about the App->webservice->database approach to this issue when using a database)</p>