private AppInfo getAppInfo() { int INVALID_TEXTURE_ID = -1; AppInfo appInfo = new AppInfo(); PackageManager pm = context.getPackageManager(); PackageInfo pi = pm.getPackageArchiveInfo(path, PackageManager.GET_ACTIVITIES); pi.applicationInfo.sourceDir = path; pi.applicationInfo.publicSourceDir = path; int textureId = INVALID_TEXTURE_ID; Bitmap bitmap = drawableToBitmap(pi.applicationInfo.loadIcon(pm)); if (!bitmap.isRecycled()) { textureId = TextureGenerator.generateTextureId(); TextureGenerator.createTexture(bitmap, textureId); } appInfo.setTextureId(textureId); appInfo.setAppName(pi.applicationInfo.loadLabel(pm).toString()); appInfo.setPackageName(pi.packageName); return appInfo; }