copier le fichier dans /data/local/tmp
Je veux copier des fichiers à partir de son propre dossier de données(par exemple, "/data/data/com.exemple.copier/") "/data/local/tmp/". Je ne peux pas accéder à /data/local/tmp/dans mon application. Est-il possible de le faire?
Je n'ai pas accès à la racine de mon appareil.
Voici mon code:
Process p=Runtime.getRuntime().exec("cat "+ this.getApplicationInfo().dataDir +"1.txt > /data/local/tmp/1.txt" );
p.waitFor();
Pourquoi voulez-vous le faire - ce que l'objectif réel serait de le faire vous aider à accomplir?
OriginalL'auteur Aung Thiha | 2014-04-15
Vous devez vous connecter pour publier un commentaire.
Non, vous ne pouvez pas le faire à partir d'une application, à moins que votre appareil a quelque chose comme un piraté
su
qui vous permet d'exécuter une aide comme un processus de plus privilégiés de l'utilisateur (c'est à dire, sauf si elle est "enraciné").Vous devez mettre le fichier quelque part d'autre, comme le stockage externe. (Si la commande adb shell est autorisé à créer des répertoires dans /data/local/tmp vous pourriez être en mesure de créer un il y et chmod ou chown pour donner à votre application d'accès, mais c'est non portable sur l'ensemble des versions)
Ou si vous êtes simplement à essayer de l'exposer, de modifier les autorisations d'accès (quelqu'un va probablement venir le long et insister sur la java de la constante pour le réglage d'un fichier lisible par tout le monde est superficiellement obsolète, mais la désactivation de la fonctionnalité nécessiterait un changement drastique de la sous-jacentes du système d'exploitation)
OriginalL'auteur Chris Stratton