Android第二十六课 调试模式 file.exits判断目录异常
代码如下:
public class testfile {
public native RenderCar();
public native RenderSky();
public boolean testPathExit()
{
String str = Environment.getExternalStorageDirectory().getPath();
str = str + "/Android/data/test/";
String str1 = "/storage/sdcard0/Android/data/test/";
File file = new File(str);
if (file.exists())
{
return true;
}
return false;
}
public String getDataPath()
{
String str1 = "/storage/sdcard0/Android/data/test/";
String str = Environment.getExternalStorageDirectory().getPath();
str = str + "/Android/data/test/";
File file = new File(str);
if (file.exists()) {
return str;
}
return str1;
}
}
说明:该类编写了一些native函数,调用Jni实际的函数实现,在调试模式下getDataPath函数测试出来的str目录永远是不存在的,因为直接return str1,但是testPathExit函数测试的结果却都是true,说明该目录存在,并且单步调试过程中进入到断点ret = true.
在发布版本中,打印getDataPath返回的字符串,目录确实是存在的,返回结果是/storage/emulate/0/Android/data/test,说明确实返回return str,目前尚未有任何合理的解释
更多相关文章
- C语言函数以及函数的使用
- Android Studio 单刷《第一行代码》系列目录
- 【Android NDK 开发】Ubuntu 函数库交叉编译 ( Android 动态库交
- Android单元测试初探——Instrumentation
- 我的Android相关文章目录
- Android Studio目录结构
- 最全的Android单元测试教程
- Android 目录
- Android Service总结01 目录