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()); }
- 要解析的资源文件在