o objeto folder não é um diretório (ou não existe) e o listFiles() retornou null, fazendo com que File[] file = null.
Daí ao tentar acessar o tamanho da lista de files file.length resultou em null.length, o que lança a exceção de NullPointerException.
Basicamente ele faz que o "for (int i = 0; i < file.length; i++) {" tonar um file.lenght que ira resultar em null.lenght que vai lançar uma exceção de NullPointerException.
o objeto folder não é um diretório (ou não existe) e o listFiles() retornou null, fazendo com que File[] file = null. Daí ao tentar acessar o tamanho da lista de files file.length resultou em null.length, o que lança a exceção de NullPointerException. Basicamente ele faz que o "for (int i = 0; i < file.length; i++) {" tonar um file.lenght que ira resultar em null.lenght que vai lançar uma exceção de NullPointerException.