web-dev-qa-db-fra.com

Comment inclure des fichiers de données avec l'APK de l'application?

Je souhaite créer des fichiers pré-créés lorsque mon Android est installée.

Je voudrais créer le fichier à la fois dans la mémoire interne (data/data // files /) et dans les répertoires sdcard nouvellement créés (/ sdcard // data1 /).

Comment puis-je faire ceci?

43
Xarph

Vous pouvez enregistrer vos fichiers dans \res\raw et écrivez le code pour stocker ces fichiers aux emplacements souhaités s'il n'existe pas au démarrage de l'application.
Cochez this pour accéder à la mémoire interne et à la carte SD
et accédez au fichier raw à l'aide de ce qui suit

InputStream databaseInputStream = getResources().openRawResource(R.raw.yourfile);
40
Labeeb Panampullan

Si vous avez un plus grand nombre de fichiers et une structure de répertoires, vous devez utiliser/assets. Ceux-ci ne reçoivent pas de constantes R et peuvent être analysés par votre application

Pour ouvrir un fichier d'actif:

InputStream is = getAssets().open("path/file.ext");

Pour répertorier un répertoire:

String[] files = getAssets().list("");
41
Mikpa

Il convient de mentionner que de très grandes quantités de données peuvent être traitées APK Expansion Files .

En 2016, Google Play exige actuellement que votre fichier APK ne dépasse pas 100 Mo. Pour la plupart des applications, c'est beaucoup d'espace.

La taille limite de l'APK augmente de temps en temps, il est donc important de vérifier le chiffre actuel.

2