private ArrayList<ApkFileAttributes> getApkAttributesToMemory(String path) {
        System.out.println("Starting to fill the memory with data from path: " + path);
        File[] filesToConsider = getApkFileList(path);
        ArrayList<File> skippedFiles = new ArrayList<File>();
        final int filesNum = filesToConsider.length;
        
        ArrayList<ApkFileAttributes> apkAttrList = new ArrayList<ApkFileAttributes>(filesNum);
        
        ApkFileAttributes att;
        int skipped = 0;
        int total = 0;
        for (int i = 0; i < filesNum; i++) {
            att = AttributesExtractor.getApkAttributes(filesToConsider[i]);
            total++;
            if (att == null) {
                skipped++;
                skippedFiles.add(filesToConsider[i]);
                continue;
            }
            
            apkAttrList.add(att);
        }
        System.out.println("Processed: " + total + ", skipped: " + skipped + 
                " files from path [" + path + "]");
        System.out.println("Skipped files:");
        for (int i = 0; i < skipped; i++) {
        	System.out.println(skippedFiles.get(i).getName());
        }
        
        return apkAttrList;
    }