2016-12-28 1 views
0

J'ai un UnauthorizedAccessException sur Android lorsque j'essaie de récupérer certains fichiers. Les choses bizarres, c'est que cela a fonctionné pendant des mois avant ce soir.UnauthorizedAccessException sur android

Les seules choses que je ne les deux dernières heures sont (même si je ne vois pas comment il peut avoir rien changé):

  • télécharger l'APK alpha pour permettre de tester le services Google Play
  • l'ajout d'un fichier de clés et la signature de l'application (essayé sans signature, même problème)
  • suppression dernière instance de mon application sur mon appareil de test (non compatible avec la version signée)

l'un pp est construit avec Unity 5.5.0f3, j'utilise Application.persistentDataPath pour construire le chemin auquel j'essaye d'accéder.

ici est le callstack à l'exception:

UnauthorizedAccessException: Access to the path "/storage/emulated/0/Android/data/com.<mycompany>.<myproductname>/files/Saves" is denied. 
at System.IO.Directory.GetFileSystemEntries (System.String path, System.String searchPattern, FileAttributes mask, FileAttributes attrs) [0x00000] in <filename unknown>:0 
at System.IO.Directory.GetFiles (System.String path, System.String searchPattern) [0x00000] in <filename unknown>:0 
at System.IO.Directory.GetFiles (System.String path, System.String searchPattern, SearchOption searchOption) [0x00000] in <filename unknown>:0 
at ProfileManager.ParseDirForProfiles (.DirName _dir, .FileExtension _ext) [0x00000] in <filename unknown>:0 
at SaveManager.ParseDirForProfiles() [0x00000] in <filename unknown>:0 
at myproductname.OnStart() [0x00000] in <filename unknown>:0 

à StateMachine.Start() [0x00000] dans: 0 CallStack

Le problème à l'origine du code: Code

et la paramètres pertinents: Settings 1 Settings 2

Répondre

1

Le répertoire peut toujours appartenir à la version précédente incompatible de l'application. Supprimez le répertoire et laissez votre application le recréer la prochaine fois que vous l'exécutez.

Ce type de problème ne se produira jamais si votre application est mise à jour normalement.

+0

Merci beaucoup pour avoir résolu mon problème. J'accepterai la réponse dès que possible. –