We are developing a dictionary application for Android. We have bought authorized dictionary contents from authoritative presses and would have them bundled in the app. Protection of the contents after shipment of the app is a must. For performance efficiency and ease of development, we would want to store the dictionary contents as SQLite database tables.
We plan to pre-install the dictionary app together with the dictionary contents for tablets - we have a customer who is an android tablet vendor, and continue to provide customer with upcoming dictionary titles via Android Market or some other on-line purchase mechanism.
My question is:
You can do nothing to prevent the contents from being "hacked". If the Android OS can decode and use the contents of the database then so can anyone else if they reverse engineer your app. You could, I suppose, put some effort into protecting the data, so that your supplier is happy that you've made casual hacking harder/impossible, but they're deluding themselves if they believe that any company they've licensed their IP to can guarantee that any protection scheme will protect their data.
You must consider keeping the data on a server somewhere, and only access it remotely using an app if protection is more important than convenience.