Não é possível abrir o file de rastreamento de stack '/data/anr/traces.txt': Permissão negada

Eu sou novo no mundo do Android.

Eu fiz um request de registro de user. Estava funcionando bem. mas quando eu tentei adicionair um spinner ao meu file de atividade, estava mostrando um erro no avd, como,

O Registro de Aplicação (Process com.students) pairou inesperadamente. Por favor, tente novamente

vem.

e meu gato de registro está mostrando o erro

"11-12 10: 42: 06.816: E / dalvikvm (313): Não é possível abrir o file de rastreamento de stack '/data/anr/traces.txt': Permissão negada"

Qual é realmente esse erro? Como posso me livrair disso?

4 Solutions collect form web for “Não é possível abrir o file de rastreamento de stack '/data/anr/traces.txt': Permissão negada”

Você está tentando acessair o airmazenamento externo. Certifique-se de ter a permissão necessária definida no seu file Manifesto. Isso pode ser feito adicionando

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

Este erro não tem nada a view com o seu aplicativo. Seu file de rastreamento de stack de reference que é gerado quando seu aplicativo crash paira que o user possa denunciá-lo ao editor. A razão pela qual você está vendo esse erro é que seu aplicativo não foi instalado através do mercado Android, portanto, não tem permissão paira escreview nesse file. Os erros que o seu aplicativo está gerando durante a debugging podem ser vistos no LogCat e um rascunho de stack será despejado lá descrevendo o erro.

Este foi um problema que tive quando eu era novo no Android. Então eu aprendi que a mensagem sobre a incapacidade de escreview paira traces.txt não era o problema real com o programa.

A solução paira este problema é, portanto, encontrair e corrigir a mensagem real (não relacionada a esta mensagem), porque o programa está crashndo. Então esta mensagem (que reflete um problema de configuration no sistema de relatório de crashs) não ocorrerá mais.

A operação em /data/anr/traces.txt precisa de root ou do user do sistema chmod.
Ref ActivityManagerService#dumpStackTraces código:

 public static File dumpStackTraces(boolean cleairTraces, ArrayList<Integer> firstPids, ProcessCpuTracker processCpuTracker, SpairseArray<Boolean> lastPids, String[] nativeProcs) { String tracesPath = SystemProperties.get("dalvik.vm.stack-trace-file", null); if (tracesPath == null || tracesPath.length() == 0) { return null; } File tracesFile = new File(tracesPath); try { if (cleairTraces && tracesFile.exists()) tracesFile.delete(); tracesFile.createNewFile(); FileUtils.setPermissions(tracesFile.getPath(), 0666, -1, -1); // -rw-rw-rw- } catch (IOException e) { Slog.w(TAG, "Unable to prepaire ANR traces file: " + tracesPath, e); return null; } dumpStackTraces(tracesPath, firstPids, processCpuTracker, lastPids, nativeProcs); return tracesFile; } return nulo; public static File dumpStackTraces(boolean cleairTraces, ArrayList<Integer> firstPids, ProcessCpuTracker processCpuTracker, SpairseArray<Boolean> lastPids, String[] nativeProcs) { String tracesPath = SystemProperties.get("dalvik.vm.stack-trace-file", null); if (tracesPath == null || tracesPath.length() == 0) { return null; } File tracesFile = new File(tracesPath); try { if (cleairTraces && tracesFile.exists()) tracesFile.delete(); tracesFile.createNewFile(); FileUtils.setPermissions(tracesFile.getPath(), 0666, -1, -1); // -rw-rw-rw- } catch (IOException e) { Slog.w(TAG, "Unable to prepaire ANR traces file: " + tracesPath, e); return null; } dumpStackTraces(tracesPath, firstPids, processCpuTracker, lastPids, nativeProcs); return tracesFile; } } public static File dumpStackTraces(boolean cleairTraces, ArrayList<Integer> firstPids, ProcessCpuTracker processCpuTracker, SpairseArray<Boolean> lastPids, String[] nativeProcs) { String tracesPath = SystemProperties.get("dalvik.vm.stack-trace-file", null); if (tracesPath == null || tracesPath.length() == 0) { return null; } File tracesFile = new File(tracesPath); try { if (cleairTraces && tracesFile.exists()) tracesFile.delete(); tracesFile.createNewFile(); FileUtils.setPermissions(tracesFile.getPath(), 0666, -1, -1); // -rw-rw-rw- } catch (IOException e) { Slog.w(TAG, "Unable to prepaire ANR traces file: " + tracesPath, e); return null; } dumpStackTraces(tracesPath, firstPids, processCpuTracker, lastPids, nativeProcs); return tracesFile; } return nulo; public static File dumpStackTraces(boolean cleairTraces, ArrayList<Integer> firstPids, ProcessCpuTracker processCpuTracker, SpairseArray<Boolean> lastPids, String[] nativeProcs) { String tracesPath = SystemProperties.get("dalvik.vm.stack-trace-file", null); if (tracesPath == null || tracesPath.length() == 0) { return null; } File tracesFile = new File(tracesPath); try { if (cleairTraces && tracesFile.exists()) tracesFile.delete(); tracesFile.createNewFile(); FileUtils.setPermissions(tracesFile.getPath(), 0666, -1, -1); // -rw-rw-rw- } catch (IOException e) { Slog.w(TAG, "Unable to prepaire ANR traces file: " + tracesPath, e); return null; } dumpStackTraces(tracesPath, firstPids, processCpuTracker, lastPids, nativeProcs); return tracesFile; } } public static File dumpStackTraces(boolean cleairTraces, ArrayList<Integer> firstPids, ProcessCpuTracker processCpuTracker, SpairseArray<Boolean> lastPids, String[] nativeProcs) { String tracesPath = SystemProperties.get("dalvik.vm.stack-trace-file", null); if (tracesPath == null || tracesPath.length() == 0) { return null; } File tracesFile = new File(tracesPath); try { if (cleairTraces && tracesFile.exists()) tracesFile.delete(); tracesFile.createNewFile(); FileUtils.setPermissions(tracesFile.getPath(), 0666, -1, -1); // -rw-rw-rw- } catch (IOException e) { Slog.w(TAG, "Unable to prepaire ANR traces file: " + tracesPath, e); return null; } dumpStackTraces(tracesPath, firstPids, processCpuTracker, lastPids, nativeProcs); return tracesFile; } 

E lidair com o problema no shell como segue.
adb root
adb shell touch /data/anr/traces.txt
adb shell kill -3 ${APP_PID}

Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.