在做安卓热更的时候,一般都要将文件下载到本地,然后再进行加载。这个时候就涉及到本地已有dex文件的情况下,要下载另外一个dex文件来覆盖本地文件。
首先,因为访问权限的关系,一定不要下载到SD卡。避免出现找不到路径,或者无访问权限等问题。
其次,一定要将本地的已有文件先删除,然后新建文件,下载新的。否则有可能因为文件被破坏,而导致加载dex文件的时候加载失败。也就是下面的步骤
try {
if(file.exists()){
file.delete();
}
file.createNewFile();
} catch (Exception e) {
e.printStackTrace();
}