AndroidTest时获取不到assets目录下文件问题
-
读取assets 目录有两种方式
-
获取src/main/assets 目录中的资源文件 Context ctx = InstrumentationRegistry.getTargetContext();
-
获取src/androidTest/assets 目录中的资源文件 Context ctx = InstrumentationRegistry.getContext();
-
src/androidTest 下创建assets 目录可以通过new Disectory 选择assets 方式创建 -
可以通过配置build.gradle 文件指定配置assets 目录的路径 sourceSets { main { assets.srcDirs = ['src/main/assets', 'src/androidTest/assets'] } }
-
androidTest 中的执行代码如下
- 要解析的资源文件在
app/src/androidTest/assets/save.json @Test
public void readJson() throws IOException {
Context ctx = InstrumentationRegistry.getContext();
InputStream is = ctx.getResources().getAssets().open("save.json");
StringBuilder stringBuilder = new StringBuilder();
BufferedReader bf = new BufferedReader(new InputStreamReader(is));
String line;
while ((line = bf.readLine()) != null) {
stringBuilder.append(line);
}
Log.i("log",stringBUilder.toString());
}
|