我的两个用户报告了我的Android应用程序的问题,通常是Tseen手势。他们俩都使用摩托罗拉机器人。该应用程序保存了一个文本文件,该文件只是两个字符串的手势名称和电话号码列表。它将文件保存到私有数据区域。我不知道是该代码失败的,但是他们报告了手机退出屏幕睡眠后分配的数字消失。由于该文件每次都在on Create中重新阅读,因此我假设该文件在返回时不存在。

一旦我可以接触机器人,我就会调试它,但是与此同时,您能看到这种保存操作会失败的原因(没有其他用户已经报告了这一点)吗?

    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返回应用程序上下文,mappings_file_name解析为“ gesture_mappings.txt”。

就像我说的那样,我不知道这是问题所在。这可能与应用程序内部的状态管理有关。如果有人有机器人,也许他们可以从市场上下载该应用并为我进行测试?请注意,这是一个真正的帮助请求 - 不是试图增加我的下载。

有帮助吗?

解决方案

这被诊断为由扩展字符集引起的,导致线断裂被误解,并通过使用UTF8明确编写文件来解决。看 如何在Android上读写UTF-8? 1

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top