调试时看不到变量值

时间:2018-08-23 01:04:21

标签: android android-studio android-debug

代码如下所示,我设置一个断点以检查文件是否成功创建,但是在调试窗口中变量值是一个空字符串,如图所示,为什么会发生这种情况?可能需要打开IDE的某些选项?

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        File file = new File(getFilesDir(), "img.png");
        try {
            file.createNewFile();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

enter image description here

android studio版本是3.1.4

已编辑: 现在这个问题严重影响了我的发展,我将读取如下文件:

        FileInputStream fis = null;
        try {
            fis = new FileInputStream(file);
        } catch (FileNotFoundException e) {
            e.printStackTrace();//throw exception 
        }

但是我可以看到该文件确实存在于我的应用程序私有文件夹中,为什么要对此进行隐藏?我试图在外部存储中写入和读取文件,但结果相同。

2 个答案:

答案 0 :(得分:1)

这是一个奇怪的问题。当我尝试您在测试应用程序中发布的代码时,我可以看到getFilesDir()的值。它向我指出了可能是环境问题的方向。就我而言,我尝试在配置为具有API级别23的Nexus 6p的仿真器上进行检查,建议您尝试使用其他具有不同配置的设备或新仿真器。这可能是模拟器或设备错误。

答案 1 :(得分:0)

我有类似的问题。对于我来说,“启用toString()对象视图”很有帮助。

  

设置>构建,执行,部署>调试器>数据视图> Java