Domanda

Due dei miei utenti hanno segnalato un problema con la mia applicazione Android, OftSeen gesti. Entrambi utilizzano un Motorola Droid. L'applicazione salva un file di testo che è solo un elenco di nomi e numeri di telefono gesto, entrambe le stringhe. Si salva il file nella zona di dati privati. Non so che è questo codice che sta fallendo, ma riporto i numeri assegnati scompaiono dopo che il telefono esce dal sonno schermo. Dal momento che il file viene riletto in OnCreate ogni volta, sto assumendo il file non esiste su ritorno.

Non appena riesco a mettere le mani su un Droid io eseguire il debug, ma nel frattempo si può vedere una ragione per cui questa operazione di salvataggio fallirebbe sul Droid (nessun altro utente ha segnalato questo)?

    OutputStreamWriter out = new OutputStreamWriter(AppGlobal.getContext().openFileOutput(MAPPINGS_FILE_NAME, 0));

    for (String key : mMap.keySet()) {
        String number = mMap.get(key).number;
        out.write(String.format("%s,%s\n", key, number == null ? "" : number));
    }
    out.close();

AppGlobal.getContext restituisce il contesto di applicazione e le risolve MAPPINGS_FILE_NAME a "gesture_mappings.txt".

Come ho detto, non so che questo è il problema. Potrebbe essere qualcosa di diverso da fare con la gestione dello stato all'interno della app. Se qualcuno ha un Droid, forse potevano scaricare l'applicazione dal mercato e testarlo per me? Nota: questo è un vero e proprio richiesta di aiuto -. Non un tentativo di aumentare le mie download

È stato utile?

Soluzione

Questo è stato diagnosticato come causati dal set di caratteri estesi che causano interruzioni di linea per essere male interpretate e è stato risolto scrivendo esplicitamente il file usando UTF8. Vedere Come leggere e scrivere UTF 8 su disco su Android? 1

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top