Java tutorial
//package com.java2s; //License from project: Open Source License import android.content.Context; import android.text.TextUtils; import java.lang.reflect.Field; import java.util.Map; public class Main { private static void loadApplicationResources(Context context, Map<String, String> iconPackResources, String packageName) { Field[] drawableItems = null; try { Context appContext = context.createPackageContext(packageName, Context.CONTEXT_INCLUDE_CODE | Context.CONTEXT_IGNORE_SECURITY); drawableItems = Class.forName(packageName + ".R$drawable", true, appContext.getClassLoader()) .getFields(); } catch (Exception e) { return; } for (Field f : drawableItems) { String name = f.getName(); String icon = name.toLowerCase(); name = name.replaceAll("_", "."); iconPackResources.put(name, icon); int activityIndex = name.lastIndexOf("."); if (activityIndex <= 0 || activityIndex == name.length() - 1) { continue; } String iconPackage = name.substring(0, activityIndex); if (TextUtils.isEmpty(iconPackage)) { continue; } iconPackResources.put(iconPackage, icon); String iconActivity = name.substring(activityIndex + 1); if (TextUtils.isEmpty(iconActivity)) { continue; } iconPackResources.put(iconPackage + "." + iconActivity, icon); } } }