Erreur d'accès à la carte SD du Samsung Galaxy Note 3 KitKat (4.4.x)

Depuis Samsung mise à jour de la Note 3 4.4.x, je suis l'exception suivante lors de l'écriture sur la carte SD:

java.io.IOException: open failed: EACCES (Permission denied)
at java.io.File.createNewFile(File.java:946)
at java.io.File.createTempFile(File.java:1011)

Mon application dispose de l'autorisation nécessaire pour écrire:

<manifest ...>
    <uses-sdk android:minSdkVersion="10" android:targetSdkVersion="19"/>

    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
     :  
    <application ... >
          :
    </application>
</manifest>

Le code qui crée le crash ressemble à ceci:

tempFile = File.createTempFile("anMoney", null, destinationFile.getParentFile());

destionatioFile points d'un fichier sur la Carte SD, de sorte que son fichier parent est le dossier.

L'erreur semble être le cas sur la Note 3 appareils et autres Samsung ou non-Samsung appareils fonctionnent très bien. Donc, ce sent comme un Note 3 bug, mais est-il une solution de contournement que je pouvais peut-être faire?

  • S'il vous plaît montrer le code source qui est à l'origine de cette erreur.
  • J'ai mis à jour le post avec l'appel de la plante.
  • Notez que WRITE_EXTERNAL_STORAGE a rien à voir avec une quelconque "carte SD". De stockage externe n'a pas été mis en œuvre comme un peu amovible de stockage sur la plupart des appareils réalisés depuis 2011. Donc, quand vous dites que "destionatioFile points d'un fichier sur la Carte SD, de sorte que son parent fichier est dans le dossier", ne vous signifient littéralement certaines de stockage amovibles, ou voulez-vous dire quelque chose sur officiel de stockage externe?
  • C'est le réel de la carte SD. Les utilisateurs ont la possibilité de saisir dans un chemin, et l'erreur qui se passe pour ceux qui tapez le chemin d'accès au réel SD.
  • C'est Samsung réponse: :Cette erreur peut se produire si votre carte sd est toujours bloqué comme un périphérique usb. assurez-vous que vous n'utilisez pas votre téléphone comme un périphérique de stockage usb. déconnectez votre appareil de l'ordinateur et essayez à nouveau. aussi, vous pourriez avoir à ajouter de l'autorisation suivante : <uses-permission android:name="android.la permission.MOUNT_UNMOUNT_FILESYSTEMS" />
  • Je n'ai jamais entendu parler de cette autorisation.

InformationsquelleAutor Tom anMoney | 2014-02-03